diff options
Diffstat (limited to 'syntax/parse.go')
-rw-r--r-- | syntax/parse.go | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/syntax/parse.go b/syntax/parse.go index 08a40e3..f329cef 100644 --- a/syntax/parse.go +++ b/syntax/parse.go @@ -406,27 +406,14 @@ func (p *parser) parseParams() []Expr { break } - // *args - if p.tok == STAR { - stars = true - pos := p.nextToken() - id := p.parseIdent() - params = append(params, &UnaryExpr{ - OpPos: pos, - Op: STAR, - X: id, - }) - continue - } - - // **kwargs - if p.tok == STARSTAR { + // *args or **kwargs + if p.tok == STAR || p.tok == STARSTAR { stars = true pos := p.nextToken() id := p.parseIdent() params = append(params, &UnaryExpr{ OpPos: pos, - Op: STARSTAR, + Op: p.tok, X: id, }) continue |