Skip to content

Commit 15083fc

Browse files
committed
Enforce EOL in grammars (otherwise parser just ignores invalid code and everything that follows)
1 parent c4c1499 commit 15083fc

File tree

6 files changed

+7
-7
lines changed

6 files changed

+7
-7
lines changed

de.peeeq.wurstscript/src/main/antlr/de/peeeq/wurstscript/antlr/Jass.g4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ grammar Jass;
44
package de.peeeq.wurstscript.antlr;
55
}
66

7-
compilationUnit : NL? decls+=jassTopLevelDeclaration*;
7+
compilationUnit : NL? decls+=jassTopLevelDeclaration* EOF;
88

99
jassTopLevelDeclaration:
1010
jassGlobalsBlock

de.peeeq.wurstscript/src/main/antlr/de/peeeq/wurstscript/antlr/Wurst.g4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ grammar Wurst;
44
package de.peeeq.wurstscript.antlr;
55
}
66

7-
compilationUnit : NL* decls+=topLevelDeclaration*;
7+
compilationUnit : NL* decls+=topLevelDeclaration* EOF;
88

99
topLevelDeclaration:
1010
wpackage

de.peeeq.wurstscript/src/main/antlr/de/peeeq/wurstscript/jurst/antlr/Jurst.g4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ grammar Jurst;
55
package de.peeeq.wurstscript.jurst.antlr;
66
}
77

8-
compilationUnit : NL* decls+=topLevelDeclaration*;
8+
compilationUnit : NL* decls+=topLevelDeclaration* EOF;
99

1010
topLevelDeclaration:
1111
wpackage

de.peeeq.wurstscript/src/test/java/tests/wurstscript/tests/ArrayTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,9 @@ public void multiArrayWrongSize() {
181181
@Test
182182
public void conditionalWithArray() { // see #631
183183
testAssertOkLines(false,
184+
"package test",
184185
"bool cond = true",
185-
"class TestClass",
186-
" int array[3] zzzz",
186+
"int array[3] zzzz",
187187
"function ffff() returns int",
188188
" return cond ? zzzz[1] : 0");
189189
}

de.peeeq.wurstscript/src/test/java/tests/wurstscript/tests/BugTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -906,7 +906,7 @@ public void testLinePos() { // #462
906906
"abstract class Hey\n" +
907907
" function foo()";
908908

909-
WurstModel model = test().executeProg(false).withStdLib(false).withCu(compilationUnit("testLine", "testLine")).run().getModel();
909+
WurstModel model = test().executeProg(false).withStdLib(false).withCu(compilationUnit("testLine", input)).run().getModel();
910910

911911
model.accept(new WurstModel.DefaultVisitor() {
912912
@Override

de.peeeq.wurstscript/src/test/java/tests/wurstscript/tests/ClassesExtTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -733,7 +733,7 @@ public void subTypeGenericInterface() {
733733

734734
@Test
735735
public void subTypeGenericInterface2() {
736-
testAssertOkLines(false, "Cannot assign B<C> to A<C, integer>",
736+
testAssertErrorsLines(false, "Cannot assign B<C> to A<C, integer>",
737737
"package test",
738738
" class C",
739739
" interface A<X, Y>",

0 commit comments

Comments
 (0)