From 24d9877e822c400240a7e86cf8835971ed969ac7 Mon Sep 17 00:00:00 2001 From: Ryo Nihei Date: Fri, 2 Jul 2021 00:04:56 +0900 Subject: Prohibit defining identifiers beginning with an underscore Identifiers beginning with an underscore are used as auto-generated identifiers. --- spec/lexer.go | 3 +++ 1 file changed, 3 insertions(+) (limited to 'spec/lexer.go') diff --git a/spec/lexer.go b/spec/lexer.go index 2be3918..a1bd6fc 100644 --- a/spec/lexer.go +++ b/spec/lexer.go @@ -160,6 +160,9 @@ func (l *lexer) lexAndSkipWSs() (*token, error) { case "kw_fragment": return newSymbolToken(tokenKindKWFragment), nil case "identifier": + if strings.HasPrefix(tok.Text(), "_") { + return nil, synErrAutoGenID + } return newIDToken(tok.Text()), nil case "terminal_open": var b strings.Builder -- cgit v1.2.3