diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/tparse/tree-statement.go | 4 | ||||
| -rw-r--r-- | src/tparse/type.go | 1 | 
2 files changed, 5 insertions, 0 deletions
| diff --git a/src/tparse/tree-statement.go b/src/tparse/tree-statement.go index 9280253..262bd6f 100644 --- a/src/tparse/tree-statement.go +++ b/src/tparse/tree-statement.go @@ -184,6 +184,10 @@ func keywordStatement(tokens *[]Token, tok, max int) (Node, int) {  		tmp.Data = (*tokens)[tok]  		tok++  		// Check for a numerical value and dip +	case "return": +		if (*tokens)[tok].Type != DELIMIT || (*tokens)[tok].Data == "{" || (*tokens)[tok].Data == "(" { +			tmp, tok = parseValue(tokens, tok, max) +		}  	case "alloc", "salloc":  		// Parse value list  		tmp, tok = parseValueList(tokens, tok, max) diff --git a/src/tparse/type.go b/src/tparse/type.go index b4ab2fe..1e51889 100644 --- a/src/tparse/type.go +++ b/src/tparse/type.go @@ -102,6 +102,7 @@ var RESWORD = map[string]int{  	"loop":     KEYWORD,  	"continue": KEYWORD,  	"break":    KEYWORD, +	"return":   KEYWORD,  	"match":   KEYWORD,  	"case":    KEYWORD, |