diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java index 19ea99a25ca..1735d050cbf 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java @@ -1859,7 +1859,10 @@ public class JetExpressionParsing extends AbstractJetParsing { parseExpression(); argument.done(VALUE_ARGUMENT); } - + + /* + * "object" (":" delegationSpecifier{","})? classBody // Cannot make class body optional: foo(object : F, A) + */ public void parseObjectLiteral() { PsiBuilder.Marker literal = mark(); PsiBuilder.Marker declaration = mark(); diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java index 1e5f528da10..2f4e8ff2d94 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java @@ -1552,7 +1552,7 @@ public class JetParsing extends AbstractJetParsing { /* * functionType - * : (type ".")? "(" (parameter | modifiers type){","} ")" "->" type? + * : (type ".")? "(" (parameter | modifiers type){","}? ")" "->" type? * ; */ private void parseFunctionType() { @@ -1560,9 +1560,7 @@ public class JetParsing extends AbstractJetParsing { } private PsiBuilder.Marker parseFunctionTypeContents() { -// assert _at(LPAR) : tt(); - if (!_at(LPAR)) - System.out.println(myBuilder.getTokenText()); + assert _at(LPAR) : tt(); PsiBuilder.Marker functionType = mark(); // advance(); // LPAR diff --git a/grammar/src/expressions.grm b/grammar/src/expressions.grm index af008f7ef6c..5ef335f07c2 100644 --- a/grammar/src/expressions.grm +++ b/grammar/src/expressions.grm @@ -266,7 +266,7 @@ arrayAccess ; objectLiteral - : "object" ":" delegationSpecifier{","}? classBody // Cannot make class body optional: foo(object : F, A) + : "object" (":" delegationSpecifier{","})? classBody // Cannot make class body optional: foo(object : F, A) ; /* Factory methods: