From edf93dea0525d4fc87b47684117e6b9dc6ddd8d4 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Tue, 1 Jun 2021 21:27:55 +0200 Subject: [PATCH] fix parser states and catch-all rule --- src/main/jastadd/scanner/Keywords.flex | 2 +- src/main/jastadd/scanner/RulesPostamble.flex | 8 ++++---- src/main/jastadd/scanner/Symbols.flex | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/jastadd/scanner/Keywords.flex b/src/main/jastadd/scanner/Keywords.flex index 76397b9..27524e3 100644 --- a/src/main/jastadd/scanner/Keywords.flex +++ b/src/main/jastadd/scanner/Keywords.flex @@ -1,4 +1,4 @@ -<YYINITIAL,DECLARATION> { +<YYINITIAL,COMMENT,DECLARATION> { "abstract" { yybegin(DECLARATION); return sym(Terminals.ABSTRACT); } "rel" { yybegin(DECLARATION); return sym(Terminals.RELATION); } } diff --git a/src/main/jastadd/scanner/RulesPostamble.flex b/src/main/jastadd/scanner/RulesPostamble.flex index 5460a0b..37f546f 100644 --- a/src/main/jastadd/scanner/RulesPostamble.flex +++ b/src/main/jastadd/scanner/RulesPostamble.flex @@ -1,7 +1,7 @@ -<YYINITIAL,DECLARATION> { +<YYINITIAL,COMMENT,DECLARATION> { {ID} { yybegin(DECLARATION); return sym(Terminals.ID); } - [^] { throw new ScannerError((yyline+1) +"," + (yycolumn+1) + ": Illegal character <"+yytext()+">"); } } -<YYINITIAL,DECLARATION,COMMENT> { +<YYINITIAL,COMMENT,DECLARATION> { <<EOF>> { return sym(Terminals.EOF); } -} + [^] { throw new ScannerError((yyline+1) +"," + (yycolumn+1) + ": Illegal character <"+yytext()+">"); } +} \ No newline at end of file diff --git a/src/main/jastadd/scanner/Symbols.flex b/src/main/jastadd/scanner/Symbols.flex index 7f05c11..5ac1c2d 100644 --- a/src/main/jastadd/scanner/Symbols.flex +++ b/src/main/jastadd/scanner/Symbols.flex @@ -1,4 +1,4 @@ -<YYINITIAL,DECLARATION> { +<YYINITIAL,COMMENT,DECLARATION> { ";" { yybegin(COMMENT); return sym(Terminals.SCOL); } ":" { yybegin(DECLARATION); return sym(Terminals.COL); } "::=" { yybegin(DECLARATION); return sym(Terminals.ASSIGN); } -- GitLab