diff options
Diffstat (limited to 'pkg/lang/parser/exprs.go')
| -rw-r--r-- | pkg/lang/parser/exprs.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/pkg/lang/parser/exprs.go b/pkg/lang/parser/exprs.go index d0725f6..80b0fd6 100644 --- a/pkg/lang/parser/exprs.go +++ b/pkg/lang/parser/exprs.go @@ -213,11 +213,15 @@ func (p *Parser) parseFnLitExpr() (ast.Expr, error) { return ast.Expr{}, err } - params, err := p.parseFnParams() + hasThis, params, err := p.parseFnParams() if err != nil { return ast.Expr{}, err } + if hasThis { + return ast.Expr{}, fmt.Errorf("function literal cannot have 'this' parameter") + } + // TODO: Also parse just an expression block, err := p.parseBlock() if err != nil { |
