diff --git a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtPsiUtil.java b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtPsiUtil.java
index f2f1368d2a0..b293ec7dade 100644
--- a/compiler/frontend/src/org/jetbrains/kotlin/psi/KtPsiUtil.java
+++ b/compiler/frontend/src/org/jetbrains/kotlin/psi/KtPsiUtil.java
@@ -817,6 +817,9 @@ public class KtPsiUtil {
if (current instanceof KtBlockExpression || current instanceof KtParameter) {
return (KtElement) current;
}
+ if (current instanceof KtValueArgument) {
+ return (KtElement) current;
+ }
current = parent;
}
diff --git a/idea/testData/checker/regression/javaStyleClassLiteralInAnnotationArguments.kt b/idea/testData/checker/regression/javaStyleClassLiteralInAnnotationArguments.kt
new file mode 100644
index 00000000000..43615b3085d
--- /dev/null
+++ b/idea/testData/checker/regression/javaStyleClassLiteralInAnnotationArguments.kt
@@ -0,0 +1,6 @@
+annotation class A
+
+class B
+
+@A(B.class)
+fun f() {}
\ No newline at end of file
diff --git a/idea/testData/checker/regression/objectLiteralInSupertypeList.kt b/idea/testData/checker/regression/objectLiteralInSupertypeList.kt
new file mode 100644
index 00000000000..64728b18d95
--- /dev/null
+++ b/idea/testData/checker/regression/objectLiteralInSupertypeList.kt
@@ -0,0 +1,5 @@
+interface A
+
+open class B(i: Int, a: A)
+
+class C() : B(3, object : A {})
\ No newline at end of file
diff --git a/idea/tests/org/jetbrains/kotlin/checkers/PsiCheckerTestGenerated.java b/idea/tests/org/jetbrains/kotlin/checkers/PsiCheckerTestGenerated.java
index cc631ef0a9c..073c97680b5 100644
--- a/idea/tests/org/jetbrains/kotlin/checkers/PsiCheckerTestGenerated.java
+++ b/idea/tests/org/jetbrains/kotlin/checkers/PsiCheckerTestGenerated.java
@@ -418,6 +418,12 @@ public class PsiCheckerTestGenerated extends AbstractPsiCheckerTest {
doTest(fileName);
}
+ @TestMetadata("javaStyleClassLiteralInAnnotationArguments.kt")
+ public void testJavaStyleClassLiteralInAnnotationArguments() throws Exception {
+ String fileName = KotlinTestUtils.navigationMetadata("idea/testData/checker/regression/javaStyleClassLiteralInAnnotationArguments.kt");
+ doTest(fileName);
+ }
+
@TestMetadata("Jet11.kt")
public void testJet11() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/checker/regression/Jet11.kt");
@@ -496,6 +502,12 @@ public class PsiCheckerTestGenerated extends AbstractPsiCheckerTest {
doTest(fileName);
}
+ @TestMetadata("objectLiteralInSupertypeList.kt")
+ public void testObjectLiteralInSupertypeList() throws Exception {
+ String fileName = KotlinTestUtils.navigationMetadata("idea/testData/checker/regression/objectLiteralInSupertypeList.kt");
+ doTest(fileName);
+ }
+
@TestMetadata("OverrideResolution.kt")
public void testOverrideResolution() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/checker/regression/OverrideResolution.kt");