diff --git a/src/go/parser/parser.go b/src/go/parser/parser.go index 18278ba4b7..e82c0bd122 100644 --- a/src/go/parser/parser.go +++ b/src/go/parser/parser.go @@ -7,6 +7,13 @@ // output is an abstract syntax tree (AST) representing the Go source. The // parser is invoked through one of the Parse* functions. // +// The parser accepts a larger language than is syntactically permitted by +// the Go spec, for simplicity, and for improved robustness in the presence +// of syntax errors. For instance, in method declarations, the receiver is +// treated like an ordinary parameter list and thus may contain multiple +// entries where the spec permits exactly one. Consequently, the corresponding +// field in the AST (ast.FuncDecl.Recv) field is not restricted to one entry. +// package parser import (