From d28ca5bdfae653d91de63a8cd1ddfc1bea7545bd Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Mon, 14 Apr 2014 19:15:08 +0400 Subject: [PATCH] Empty parameter list should go before '->' in a lambda Example: val x = { -> foo() } --- .../jetbrains/jet/lang/parsing/JetExpressionParsing.java | 2 +- compiler/testData/psi/FunctionLiterals_ERR.txt | 4 ++-- .../testData/psi/greatSyntacticShift/functionLiterals.txt | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) 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 6025a7041f2..8553a248b29 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java @@ -976,8 +976,8 @@ public class JetExpressionParsing extends AbstractJetParsing { if (at(ARROW)) { // { -> ...} - advance(); // ARROW mark().done(VALUE_PARAMETER_LIST); + advance(); // ARROW paramsFound = true; } else if (at(LPAR)) { diff --git a/compiler/testData/psi/FunctionLiterals_ERR.txt b/compiler/testData/psi/FunctionLiterals_ERR.txt index 6e00bb48f9e..993b78b4145 100644 --- a/compiler/testData/psi/FunctionLiterals_ERR.txt +++ b/compiler/testData/psi/FunctionLiterals_ERR.txt @@ -16,10 +16,10 @@ JetFile: FunctionLiterals_ERR.kt FUNCTION_LITERAL PsiElement(LBRACE)('{') PsiWhiteSpace(' ') - PsiElement(ARROW)('->') - PsiWhiteSpace(' ') VALUE_PARAMETER_LIST + PsiElement(ARROW)('->') + PsiWhiteSpace(' ') BLOCK REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') diff --git a/compiler/testData/psi/greatSyntacticShift/functionLiterals.txt b/compiler/testData/psi/greatSyntacticShift/functionLiterals.txt index 4c0da14cd89..b36ae66229a 100644 --- a/compiler/testData/psi/greatSyntacticShift/functionLiterals.txt +++ b/compiler/testData/psi/greatSyntacticShift/functionLiterals.txt @@ -73,10 +73,10 @@ JetFile: functionLiterals.kt FUNCTION_LITERAL PsiElement(LBRACE)('{') PsiWhiteSpace(' ') - PsiElement(ARROW)('->') - PsiWhiteSpace(' ') VALUE_PARAMETER_LIST + PsiElement(ARROW)('->') + PsiWhiteSpace(' ') BLOCK INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('1') @@ -110,10 +110,10 @@ JetFile: functionLiterals.kt FUNCTION_LITERAL_EXPRESSION FUNCTION_LITERAL PsiElement(LBRACE)('{') - PsiElement(ARROW)('->') - PsiWhiteSpace(' ') VALUE_PARAMETER_LIST + PsiElement(ARROW)('->') + PsiWhiteSpace(' ') BLOCK INTEGER_CONSTANT PsiElement(INTEGER_LITERAL)('1')