diff --git a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/compile/KtCompilingExecutor.kt b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/compile/KtCompilingExecutor.kt index d13f311fcfc..d868f4cf539 100644 --- a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/compile/KtCompilingExecutor.kt +++ b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/scratch/compile/KtCompilingExecutor.kt @@ -207,9 +207,8 @@ class KtCompilingExecutor(file: ScratchFile) : ScratchExecutor(file) { } private fun ScratchFile.findExpression(psiElement: PsiElement): ScratchExpression? { - val lineStart = psiElement.getLineNumber(true) - val lineEnd = psiElement.getLineNumber(false) - return getExpressions().firstOrNull { it.lineStart == lineStart || it.lineEnd == lineEnd } + val elementLine = psiElement.getLineNumber() + return getExpressions().firstOrNull { elementLine in it.lineStart..it.lineEnd } } private fun ScratchFile.findExpression(lineStart: Int, lineEnd: Int): ScratchExpression? { diff --git a/idea/testData/scratch/unresolvedMultiline.comp.after b/idea/testData/scratch/unresolvedMultiline.comp.after index 5cef0489a83..0e8ad49ce20 100644 --- a/idea/testData/scratch/unresolvedMultiline.comp.after +++ b/idea/testData/scratch/unresolvedMultiline.comp.after @@ -1,3 +1,7 @@ foo.forEach { // ERROR: Unresolved reference: foo; Cannot choose among the following candidates wi... 1 + 1 +} + +fun goo(a: String) { // ERROR: Unresolved reference: goo + super.goo(a) } \ No newline at end of file diff --git a/idea/testData/scratch/unresolvedMultiline.kts b/idea/testData/scratch/unresolvedMultiline.kts index b3da33ca920..a9de95ee983 100644 --- a/idea/testData/scratch/unresolvedMultiline.kts +++ b/idea/testData/scratch/unresolvedMultiline.kts @@ -1,3 +1,7 @@ foo.forEach { 1 + 1 +} + +fun goo(a: String) { + super.goo(a) } \ No newline at end of file diff --git a/idea/testData/scratch/unresolvedMultiline.repl.after b/idea/testData/scratch/unresolvedMultiline.repl.after index ef7666a5543..e1c465e67a8 100644 --- a/idea/testData/scratch/unresolvedMultiline.repl.after +++ b/idea/testData/scratch/unresolvedMultiline.repl.after @@ -1,3 +1,7 @@ foo.forEach { // ERROR: error: unresolved reference: foo 1 + 1 } + +fun goo(a: String) { // ERROR: error: unresolved reference: goo + super.goo(a) +} \ No newline at end of file