summaryrefslogtreecommitdiff
path: root/parser
diff options
context:
space:
mode:
Diffstat (limited to 'parser')
-rw-r--r--parser/README.md1
-rw-r--r--parser/type.go4
2 files changed, 3 insertions, 2 deletions
diff --git a/parser/README.md b/parser/README.md
index dda3f25..c3628a6 100644
--- a/parser/README.md
+++ b/parser/README.md
@@ -50,6 +50,7 @@ Go language support:
- [ ] deterministic maps
- [ ] channel types
- [ ] channel operations
+- [ ] multi-assign expressions
- [x] var defined by assign :=
- [x] var assign =
- [x] var declaration
diff --git a/parser/type.go b/parser/type.go
index b56a332..4412501 100644
--- a/parser/type.go
+++ b/parser/type.go
@@ -172,7 +172,7 @@ func (p *Parser) parseParamTypes(in Tokens, flag typeFlag) (types []*vm.Type, va
// Type was omitted, apply the previous one from the right.
types = append([]*vm.Type{types[0]}, types...)
p.addSymVar(i, param, types[0], flag, local)
- vars = append(vars, param)
+ vars = append([]string{param}, vars...)
continue
}
}
@@ -184,7 +184,7 @@ func (p *Parser) parseParamTypes(in Tokens, flag typeFlag) (types []*vm.Type, va
p.addSymVar(i, param, typ, flag, local)
}
types = append([]*vm.Type{typ}, types...)
- vars = append(vars, param)
+ vars = append([]string{param}, vars...)
}
return types, vars, err
}