Skip to content

Commit 4178188

Browse files
ligeeudalov
authored andcommitted
Fix name retrieval on exception reporting during analysis
1 parent 135f0a1 commit 4178188

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

compiler/frontend/src/org/jetbrains/kotlin/psi/KtScript.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,10 @@ public class KtScript extends KtNamedDeclarationStub<KotlinScriptStub> implement
3535
// make it a simple lazy value after converting to kotlin
3636
private KotlinScriptDefinition getKotlinScriptDefinition() {
3737
if (!kotlinScriptDefinitionInitialized) {
38-
KtFile ktFile = getContainingKtFile();
39-
kotlinScriptDefinitionField = KotlinScriptDefinitionProviderKt.getScriptDefinition(ktFile);
38+
kotlinScriptDefinitionField = KotlinScriptDefinitionProviderKt.getScriptDefinition(getContainingKtFile());
4039
kotlinScriptDefinitionInitialized = true;
41-
assert kotlinScriptDefinitionField != null : "Should not parse a script without definition: " + ktFile.toString();
4240
}
41+
assert kotlinScriptDefinitionField != null : "Should not parse a script without definition: " + getContainingKtFile().toString();
4342
return kotlinScriptDefinitionField;
4443
}
4544

compiler/frontend/src/org/jetbrains/kotlin/resolve/ExceptionWrappingKtVisitorVoid.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,13 @@ class ExceptionWrappingKtVisitorVoid(private val delegate: KtVisitorVoid) : KtVi
3838
throw e
3939
}
4040
catch (t: Throwable) {
41-
throw KotlinFrontEndException("Failed to analyze declaration ${dcl.name}", t, dcl)
41+
val name = try {
42+
dcl.name
43+
}
44+
catch (e: Throwable) {
45+
"- error: ${e.message}"
46+
}
47+
throw KotlinFrontEndException("Failed to analyze declaration $name", t, dcl)
4248
}
4349
}
4450
}

0 commit comments

Comments
 (0)