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");