Parser: allow multiple statements on the same line as the colon e.g. def foo(x, y): print(x); print(y) Bug found when adding the pass statement. -- MOS_MIGRATED_REVID=88852710
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Parser.java b/src/main/java/com/google/devtools/build/lib/syntax/Parser.java index 56a32e9..6a856f6 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/Parser.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/Parser.java
@@ -1210,6 +1210,7 @@ return ImmutableList.copyOf(arguments); } + // suite is typically what follows a colon (e.g. after def or for). // suite ::= simple_stmt // | NEWLINE INDENT stmt+ OUTDENT private List<Statement> parseSuite() { @@ -1227,9 +1228,7 @@ } expect(TokenKind.OUTDENT); } else { - Statement stmt = parseSmallStatement(); - list.add(stmt); - expect(TokenKind.NEWLINE); + parseSimpleStatement(list); } return list; }