From db31e0292c5839b67aa4d0a9ff22277c727f8f7f Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Wed, 22 Dec 2021 13:47:00 +0300 Subject: [PATCH] Analysis: add LC testdata with current behaviour --- .../lightClasses/AnnotationClass.fir.java | 14 + .../AnnotationJvmRepeatable.fir.java | 5 + .../lightClasses/AnnotationJvmRepeatable.kt | 3 +- ...AnnotationKotlinAndJavaRepeatable.fir.java | 6 + .../AnnotationKotlinAndJvmRepeatable.fir.java | 6 + .../AnnotationKotlinAndJvmRepeatable.kt | 3 +- .../AnnotationRepeatable.fir.java | 5 + ...xtendingInterfaceWithDefaultImpls.fir.java | 10 + .../InheritingInterfaceDefaultImpls.lib.java | 14 + .../lightClasses/LocalFunctions.lib.java | 16 ++ .../asJava/lightClasses/PublishedApi.fir.java | 7 + ...ecialAnnotationsOnAnnotationClass.fir.java | 8 + ...lAnnotationsOnAnnotationClass_1_6.fir.java | 8 + .../TypePararametersInClass.fir.java | 12 + ...tualTypeAliasCustomJvmPackageName.fir.java | 1 + .../compilationErrors/JvmPackageName.fir.java | 1 + .../compilationErrors/PrivateInTrait.fir.java | 16 ++ .../TraitClassObjectField.fir.java | 12 + .../compilationErrors/TwoOverrides.fir.java | 10 + .../WrongAnnotations.fir.java | 32 +++ .../lightClasses/delegation/Property.fir.java | 4 + .../lightClasses/facades/MultiFile.fir.java | 6 + .../AllOpenAnnotatedClasses.fir.java | 26 ++ .../ideRegression/AllOpenAnnotatedClasses.kt | 3 +- .../ImplementingCharSequenceAndNumber.kt | 3 +- .../ideRegression/ImplementingMap.fir.java | 6 + .../ideRegression/ImplementingMap.kt | 3 +- .../ImplementingMutableSet.fir.java | 37 +++ .../ideRegression/ImplementingMutableSet.kt | 1 + .../InheritingInterfaceDefaultImpls.lib.java | 16 ++ .../OverridingFinalInternal.fir.java | 8 + .../ideRegression/OverridingFinalInternal.kt | 3 +- .../ideRegression/OverridingInternal.fir.java | 14 + .../ideRegression/OverridingInternal.kt | 1 + .../OverridingProtected.fir.java | 8 + .../ideRegression/OverridingProtected.kt | 3 +- .../nullabilityAnnotations/Class.lib.java | 99 +++++++ .../ClassObjectField.fir.java | 20 ++ .../ClassObjectField.lib.java | 24 ++ .../FileFacade.lib.java | 92 +++++++ .../nullabilityAnnotations/Generic.fir.java | 12 + .../IntOverridesAny.fir.java | 10 + .../IntOverridesAny.lib.java | 14 + .../lightClasses/object/SimpleObject.fir.java | 26 ++ .../lightClasses/object/SimpleObject.lib.java | 30 +++ .../publicField/CompanionObject.lib.java | 17 ++ .../lightClasses/publicField/Simple.lib.java | 10 + .../annotationTargets_1_6.fir.java | 11 + .../annotationTargets_1_6.lib.java | 5 + ...ationWithSetParamPropertyModifier.fir.java | 13 + ...ationWithSetParamPropertyModifier.lib.java | 3 + .../ultraLightClasses/annotations.fir.java | 170 ++++++++++++ .../asJava/ultraLightClasses/annotations.kt | 4 +- .../ultraLightClasses/classModifiers.lib.java | 12 + .../ultraLightClasses/constructors.fir.java | 65 +++++ .../ultraLightClasses/constructors.lib.java | 10 + .../ultraLightClasses/coroutines.lib.java | 5 + .../ultraLightClasses/dataClasses.lib.java | 29 ++ ...faultMethodInKotlinWithSettingAll.fir.java | 9 + .../delegatesWithAnnotations.fir.java | 33 +++ .../delegatesWithAnnotations.lib.java | 5 + .../delegatingToInterfaces.fir.java | 38 +++ .../delegatingToInterfaces.kt | 1 + .../dollarsInNameLocal.lib.java | 6 + .../asJava/ultraLightClasses/enums.fir.java | 109 ++++++++ .../asJava/ultraLightClasses/enums.lib.java | 16 ++ .../ultraLightClasses/generics.fir.java | 81 ++++++ .../asJava/ultraLightClasses/generics.kt | 2 + .../implementingKotlinCollections.fir.java | 27 ++ .../implementingKotlinCollections.kt | 4 +- .../ultraLightClasses/importAliases.fir.java | 10 + .../inferringAnonymousObjectTypes.fir.java | 94 +++++++ .../inferringAnonymousObjectTypes.kt | 1 + .../ultraLightClasses/inheritance.fir.java | 78 ++++++ .../asJava/ultraLightClasses/inheritance.kt | 1 + .../asJava/ultraLightClasses/inlineClasses.kt | 1 + .../ultraLightClasses/inlineOnly.fir.java | 4 + .../asJava/ultraLightClasses/inlineOnly.kt | 1 + .../asJava/ultraLightClasses/inlineReified.kt | 3 +- .../ultraLightClasses/jvmField.fir.java | 85 ++++++ .../asJava/ultraLightClasses/jvmField.kt | 1 + .../asJava/ultraLightClasses/jvmName.fir.java | 29 ++ .../ultraLightClasses/jvmOverloads.fir.java | 54 ++++ .../ultraLightClasses/jvmRecord.fir.java | 24 ++ .../asJava/ultraLightClasses/jvmRecord.kt | 2 + .../ultraLightClasses/jvmRecord.lib.java | 20 ++ .../ultraLightClasses/jvmSynthetic.fir.java | 30 +++ .../jvmSyntheticForAccessors.fir.java | 18 ++ .../jvmSyntheticForAccessors.lib.java | 12 + .../jvmWildcardAnnotations.fir.java | 71 +++++ .../jvmWildcardAnnotations.lib.java | 4 + .../lateinitProperty.fir.java | 94 +++++++ .../ultraLightClasses/lateinitProperty.kt | 2 + .../localClassDerived.fir.java | 16 ++ .../ultraLightClasses/localClassDerived.kt | 4 +- .../asJava/ultraLightClasses/objects.fir.java | 156 +++++++++++ .../asJava/ultraLightClasses/objects.kt | 4 +- .../ultraLightClasses/properties.fir.java | 250 ++++++++++++++++++ .../asJava/ultraLightClasses/properties.kt | 4 +- .../simpleFunctions.fir.java | 31 +++ .../ultraLightClasses/simpleFunctions.kt | 2 + .../throwsAnnotation.fir.java | 19 ++ .../throwsAnnotation.lib.java | 4 + .../ultraLightClasses/typeAliases.fir.java | 10 + .../ultraLightClasses/typeAliases.lib.java | 1 + .../typeAnnotations.fir.java | 58 ++++ .../ultraLightClasses/typeAnnotations.kt | 1 + .../wildcardOptimization.lib.java | 4 + .../ultraLightFacades/importAliases.fir.java | 5 + .../ultraLightFacades/inlineOnly.fir.java | 2 + .../ultraLightFacades/jvmField.fir.java | 16 ++ .../asJava/ultraLightFacades/jvmField.kt | 3 +- .../asJava/ultraLightFacades/jvmName.fir.java | 27 ++ .../jvmWildcardAnnotations.fir.java | 33 +++ .../jvmWildcardAnnotations.kt | 1 + .../lateinitProperty.fir.java | 28 ++ .../ultraLightFacades/lateinitProperty.kt | 1 + .../multifileFacade.fir.java | 14 + .../multifileFacade.lib.java | 8 + .../multifileFacadeJvmName.fir.java | 6 + .../multifileFacadeJvmName.lib.java | 4 + .../ultraLightFacades/properties.fir.java | 180 +++++++++++++ .../asJava/ultraLightFacades/properties.kt | 1 + .../simpleFunctions.fir.java | 19 ++ .../ultraLightFacades/simpleFunctions.kt | 3 +- .../throwsAnnotation.fir.java | 9 + .../throwsAnnotation.lib.java | 7 + .../wildcardOptimization.fir.java | 77 ++++++ 128 files changed, 2975 insertions(+), 15 deletions(-) create mode 100644 compiler/testData/asJava/lightClasses/AnnotationClass.fir.java create mode 100644 compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.fir.java create mode 100644 compiler/testData/asJava/lightClasses/AnnotationKotlinAndJavaRepeatable.fir.java create mode 100644 compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.fir.java create mode 100644 compiler/testData/asJava/lightClasses/AnnotationRepeatable.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ExtendingInterfaceWithDefaultImpls.fir.java create mode 100644 compiler/testData/asJava/lightClasses/InheritingInterfaceDefaultImpls.lib.java create mode 100644 compiler/testData/asJava/lightClasses/LocalFunctions.lib.java create mode 100644 compiler/testData/asJava/lightClasses/PublishedApi.fir.java create mode 100644 compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass.fir.java create mode 100644 compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass_1_6.fir.java create mode 100644 compiler/testData/asJava/lightClasses/TypePararametersInClass.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/ActualTypeAliasCustomJvmPackageName.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/JvmPackageName.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/PrivateInTrait.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/TraitClassObjectField.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/TwoOverrides.fir.java create mode 100644 compiler/testData/asJava/lightClasses/compilationErrors/WrongAnnotations.fir.java create mode 100644 compiler/testData/asJava/lightClasses/delegation/Property.fir.java create mode 100644 compiler/testData/asJava/lightClasses/facades/MultiFile.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/InheritingInterfaceDefaultImpls.lib.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.fir.java create mode 100644 compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.fir.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.lib.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.fir.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.lib.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/FileFacade.lib.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/Generic.fir.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.fir.java create mode 100644 compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.lib.java create mode 100644 compiler/testData/asJava/lightClasses/object/SimpleObject.fir.java create mode 100644 compiler/testData/asJava/lightClasses/object/SimpleObject.lib.java create mode 100644 compiler/testData/asJava/lightClasses/publicField/CompanionObject.lib.java create mode 100644 compiler/testData/asJava/lightClasses/publicField/Simple.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/annotations.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/classModifiers.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/constructors.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/constructors.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/coroutines.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/dataClasses.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/defaultMethodInKotlinWithSettingAll.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/dollarsInNameLocal.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/enums.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/enums.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/generics.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/importAliases.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/inheritance.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/inlineOnly.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmField.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmName.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmOverloads.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmRecord.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmRecord.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmSynthetic.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/lateinitProperty.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/localClassDerived.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/objects.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/properties.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/simpleFunctions.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/throwsAnnotation.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/throwsAnnotation.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/typeAliases.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/typeAliases.lib.java create mode 100644 compiler/testData/asJava/ultraLightClasses/typeAnnotations.fir.java create mode 100644 compiler/testData/asJava/ultraLightClasses/wildcardOptimization.lib.java create mode 100644 compiler/testData/asJava/ultraLightFacades/importAliases.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/inlineOnly.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/jvmField.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/jvmName.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/lateinitProperty.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/multifileFacade.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/multifileFacade.lib.java create mode 100644 compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.lib.java create mode 100644 compiler/testData/asJava/ultraLightFacades/properties.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/simpleFunctions.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/throwsAnnotation.fir.java create mode 100644 compiler/testData/asJava/ultraLightFacades/throwsAnnotation.lib.java create mode 100644 compiler/testData/asJava/ultraLightFacades/wildcardOptimization.fir.java diff --git a/compiler/testData/asJava/lightClasses/AnnotationClass.fir.java b/compiler/testData/asJava/lightClasses/AnnotationClass.fir.java new file mode 100644 index 00000000000..27bdb1434d8 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/AnnotationClass.fir.java @@ -0,0 +1,14 @@ +public abstract @interface Anno /* Anno*/ { + public abstract double d();// d() + + public abstract int i();// i() + + public abstract int j();// j() + + public abstract int[] ia();// ia() + + public abstract int[] ia2();// ia2() + + public abstract java.lang.String value();// value() + +} diff --git a/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.fir.java b/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.fir.java new file mode 100644 index 00000000000..e7784422cea --- /dev/null +++ b/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.fir.java @@ -0,0 +1,5 @@ +@java.lang.annotation.Repeatable() +public abstract @interface Two /* Two*/ { + public abstract java.lang.String name();// name() + +} diff --git a/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.kt b/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.kt index 329515ea19c..f3cbe2b2e05 100644 --- a/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.kt +++ b/compiler/testData/asJava/lightClasses/AnnotationJvmRepeatable.kt @@ -4,4 +4,5 @@ @JvmRepeatable(TwoContainer::class) annotation class Two(val name: String) -annotation class TwoContainer(val value: Array) \ No newline at end of file +annotation class TwoContainer(val value: Array) +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJavaRepeatable.fir.java b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJavaRepeatable.fir.java new file mode 100644 index 00000000000..7e96d30f667 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJavaRepeatable.fir.java @@ -0,0 +1,6 @@ +@java.lang.annotation.Repeatable(value = TwoContainer.class) +@kotlin.annotation.Repeatable() +public abstract @interface Two /* Two*/ { + public abstract java.lang.String name();// name() + +} diff --git a/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.fir.java b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.fir.java new file mode 100644 index 00000000000..a2776b9ae09 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.fir.java @@ -0,0 +1,6 @@ +@java.lang.annotation.Repeatable() +@kotlin.annotation.Repeatable() +public abstract @interface Two /* Two*/ { + public abstract java.lang.String name();// name() + +} diff --git a/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.kt b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.kt index 3e244159ca4..60b7e99ac41 100644 --- a/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.kt +++ b/compiler/testData/asJava/lightClasses/AnnotationKotlinAndJvmRepeatable.kt @@ -5,4 +5,5 @@ @Repeatable @JvmRepeatable(TwoContainer::class) annotation class Two(val name: String) -annotation class TwoContainer(val value: Array) \ No newline at end of file +annotation class TwoContainer(val value: Array) +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/AnnotationRepeatable.fir.java b/compiler/testData/asJava/lightClasses/AnnotationRepeatable.fir.java new file mode 100644 index 00000000000..f27e744a33c --- /dev/null +++ b/compiler/testData/asJava/lightClasses/AnnotationRepeatable.fir.java @@ -0,0 +1,5 @@ +@kotlin.annotation.Repeatable() +public abstract @interface One /* simple.One*/ { + public abstract java.lang.String value();// value() + +} diff --git a/compiler/testData/asJava/lightClasses/ExtendingInterfaceWithDefaultImpls.fir.java b/compiler/testData/asJava/lightClasses/ExtendingInterfaceWithDefaultImpls.fir.java new file mode 100644 index 00000000000..7447a290ee6 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ExtendingInterfaceWithDefaultImpls.fir.java @@ -0,0 +1,10 @@ +public abstract interface B /* p.B*/ extends p.A { + @org.jetbrains.annotations.NotNull() + public abstract java.lang.String b();// b() + + +public static final class DefaultImpls /* p.B.DefaultImpls*/ extends p.A { + @org.jetbrains.annotations.NotNull() + public java.lang.String b();// b() + +}} diff --git a/compiler/testData/asJava/lightClasses/InheritingInterfaceDefaultImpls.lib.java b/compiler/testData/asJava/lightClasses/InheritingInterfaceDefaultImpls.lib.java new file mode 100644 index 00000000000..633617cf629 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/InheritingInterfaceDefaultImpls.lib.java @@ -0,0 +1,14 @@ +public final class Inheritor /* p.Inheritor*/ implements p.I, p.I2 { + @org.jetbrains.annotations.NotNull() + public java.lang.String bar();// bar() + + @org.jetbrains.annotations.NotNull() + public java.lang.String foo();// foo() + + public Inheritor();// .ctor() + + public final void f();// f() + + public void g();// g() + +} diff --git a/compiler/testData/asJava/lightClasses/LocalFunctions.lib.java b/compiler/testData/asJava/lightClasses/LocalFunctions.lib.java new file mode 100644 index 00000000000..ad9604dbaa7 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/LocalFunctions.lib.java @@ -0,0 +1,16 @@ +public final class A /* p.A*/ { + private static final void _get_property_$localFunInPropertyAccessor();// _get_property_$localFunInPropertyAccessor() + + private static final void _init_$localFunInConstructor();// _init_$localFunInConstructor() + + private static final void _init_$localFunInInit();// _init_$localFunInInit() + + private static final void memberFun$localFunInMemberFun();// memberFun$localFunInMemberFun() + + public A(int);// .ctor(int) + + public final int getProperty();// getProperty() + + public final void memberFun();// memberFun() + +} diff --git a/compiler/testData/asJava/lightClasses/PublishedApi.fir.java b/compiler/testData/asJava/lightClasses/PublishedApi.fir.java new file mode 100644 index 00000000000..ceeb773076b --- /dev/null +++ b/compiler/testData/asJava/lightClasses/PublishedApi.fir.java @@ -0,0 +1,7 @@ +public final class A /* A*/ { + @kotlin.PublishedApi() + public final int access$test(int);// access$test(int) + + public A();// .ctor() + +} diff --git a/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass.fir.java b/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass.fir.java new file mode 100644 index 00000000000..d807864a6e0 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass.fir.java @@ -0,0 +1,8 @@ +@kotlin.annotation.MustBeDocumented() +@kotlin.annotation.Repeatable() +@kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.SOURCE) +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.TYPE_PARAMETER) +public abstract @interface Anno /* Anno*/ { + public abstract int i();// i() + +} diff --git a/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass_1_6.fir.java b/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass_1_6.fir.java new file mode 100644 index 00000000000..d807864a6e0 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/SpecialAnnotationsOnAnnotationClass_1_6.fir.java @@ -0,0 +1,8 @@ +@kotlin.annotation.MustBeDocumented() +@kotlin.annotation.Repeatable() +@kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.SOURCE) +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.TYPE_PARAMETER) +public abstract @interface Anno /* Anno*/ { + public abstract int i();// i() + +} diff --git a/compiler/testData/asJava/lightClasses/TypePararametersInClass.fir.java b/compiler/testData/asJava/lightClasses/TypePararametersInClass.fir.java new file mode 100644 index 00000000000..724634df484 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/TypePararametersInClass.fir.java @@ -0,0 +1,12 @@ +public abstract class A /* A*/> extends B> implements C { + public A();// .ctor() + + + +public class Inner /* A.Inner*/ extends B> implements C { + public Inner();// .ctor() + +}public final class Inner2 /* A.Inner2*/ extends A.Inner implements C { + public Inner2();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/ActualTypeAliasCustomJvmPackageName.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/ActualTypeAliasCustomJvmPackageName.fir.java new file mode 100644 index 00000000000..1e1bc72eb77 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/ActualTypeAliasCustomJvmPackageName.fir.java @@ -0,0 +1 @@ +// NOT_GENERATED diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/JvmPackageName.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/JvmPackageName.fir.java new file mode 100644 index 00000000000..1e1bc72eb77 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/JvmPackageName.fir.java @@ -0,0 +1 @@ +// NOT_GENERATED diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/PrivateInTrait.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/PrivateInTrait.fir.java new file mode 100644 index 00000000000..d95561dbd26 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/PrivateInTrait.fir.java @@ -0,0 +1,16 @@ +public abstract interface PrivateInTrait /* PrivateInTrait*/ { + private abstract java.lang.String getN();// getN() + + private abstract java.lang.String getNn();// getNn() + + private abstract void setNn(java.lang.String);// setNn(java.lang.String) + + +public static final class DefaultImpls /* PrivateInTrait.DefaultImpls*/ { + private final java.lang.String getN();// getN() + + private final java.lang.String getNn();// getNn() + + private final void setNn(java.lang.String);// setNn(java.lang.String) + +}} diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/TraitClassObjectField.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/TraitClassObjectField.fir.java new file mode 100644 index 00000000000..b1b7944e3da --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/TraitClassObjectField.fir.java @@ -0,0 +1,12 @@ +public abstract interface TraitClassObjectField /* TraitClassObjectField*/ { + @org.jetbrains.annotations.NotNull() + public static final TraitClassObjectField.Companion Companion; + + +public static final class Companion /* TraitClassObjectField.Companion*/ { + @org.jetbrains.annotations.Nullable() + private final java.lang.String y; + + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/TwoOverrides.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/TwoOverrides.fir.java new file mode 100644 index 00000000000..c6db00b5306 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/TwoOverrides.fir.java @@ -0,0 +1,10 @@ +public final class TwoOverrides /* TwoOverrides*/ implements kotlin.collections.Iterable { + @org.jetbrains.annotations.Nullable() + public java.lang.Void iterator();// iterator() + + @org.jetbrains.annotations.Nullable() + public java.lang.Void iterator();// iterator() + + public TwoOverrides();// .ctor() + +} diff --git a/compiler/testData/asJava/lightClasses/compilationErrors/WrongAnnotations.fir.java b/compiler/testData/asJava/lightClasses/compilationErrors/WrongAnnotations.fir.java new file mode 100644 index 00000000000..fb52d0908fa --- /dev/null +++ b/compiler/testData/asJava/lightClasses/compilationErrors/WrongAnnotations.fir.java @@ -0,0 +1,32 @@ +public final class A /* A*/ { + @org.jetbrains.annotations.NotNull() + public static final A.Companion Companion; + + @kotlin.jvm.JvmStatic() + public static final void f3();// f3() + + public A();// .ctor() + + +public static final class Companion /* A.Companion*/ { + @kotlin.jvm.JvmName() + public final void f4();// f4() + + @kotlin.jvm.JvmName(name = "realName") + public final void realName();// realName() + + @kotlin.jvm.JvmName(name = 1L) + public final void f2();// f2() + + @kotlin.jvm.JvmOverloads() + public final void f5();// f5() + + @kotlin.jvm.JvmOverloads() + public final void f6();// f6() + + @kotlin.jvm.JvmStatic() + public final void f3();// f3() + + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/delegation/Property.fir.java b/compiler/testData/asJava/lightClasses/delegation/Property.fir.java new file mode 100644 index 00000000000..decc42a2fb3 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/delegation/Property.fir.java @@ -0,0 +1,4 @@ +public final class Derived /* Derived*/ implements Base { + public Derived(@org.jetbrains.annotations.NotNull() Base);// .ctor(Base) + +} diff --git a/compiler/testData/asJava/lightClasses/facades/MultiFile.fir.java b/compiler/testData/asJava/lightClasses/facades/MultiFile.fir.java new file mode 100644 index 00000000000..4c542c2af19 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/facades/MultiFile.fir.java @@ -0,0 +1,6 @@ +public final class MultiFile /* test.MultiFile*/ { + private static final int foo; + + public static final int getFoo();// getFoo() + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.fir.java new file mode 100644 index 00000000000..e87d11d3fbd --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.fir.java @@ -0,0 +1,26 @@ +@test.AllOpen() +public final class C /* test.C*/ { + private final int p; + + public C();// .ctor() + + public final int getP();// getP() + + public final void f();// f() + + public final void g();// g() + + + +@test.AllOpen() +public static final class H /* test.C.H*/ { + public H();// .ctor() + + public final void j();// j() + +}public static final class D /* test.C.D*/ { + public D();// .ctor() + + public final void z();// z() + +}} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.kt b/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.kt index b37d790fa47..4b37b8bb6fa 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/AllOpenAnnotatedClasses.kt @@ -24,4 +24,5 @@ class C { } // LAZINESS:NoLaziness -// SKIP_SANITY_TEST \ No newline at end of file +// SKIP_SANITY_TEST +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingCharSequenceAndNumber.kt b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingCharSequenceAndNumber.kt index 4598b3afbf0..219a57dd538 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingCharSequenceAndNumber.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingCharSequenceAndNumber.kt @@ -46,4 +46,5 @@ class Container { } } -// FIR_COMPARISON \ No newline at end of file +// FIR_COMPARISON +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.fir.java new file mode 100644 index 00000000000..0abef2acc7c --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.fir.java @@ -0,0 +1,6 @@ +public final class TypeHierarchyMap /* p1.TypeHierarchyMap*/ implements kotlin.collections.Map, TValue> { + public TypeHierarchyMap();// .ctor() + + public boolean containsKey(@org.jetbrains.annotations.NotNull() java.lang.Class);// containsKey(java.lang.Class) + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.kt b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.kt index 48e98982567..fc66213c776 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMap.kt @@ -5,4 +5,5 @@ class TypeHierarchyMap : Map, TValue> { override fun containsKey(key: Class<*>): Boolean { TODO("not implemented") } -} \ No newline at end of file +} +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.fir.java new file mode 100644 index 00000000000..8a05a6c7417 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.fir.java @@ -0,0 +1,37 @@ +public final class SmartSet /* SmartSet*/ implements kotlin.collections.MutableSet { + @org.jetbrains.annotations.NotNull() + public static final SmartSet.Companion Companion; + + @org.jetbrains.annotations.Nullable() + private java.lang.Object data; + + private int size; + + @org.jetbrains.annotations.NotNull() + public java.util.Iterator iterator();// iterator() + + private SmartSet();// .ctor() + + public boolean add(T);// add(T) + + public int getSize();// getSize() + + public void clear();// clear() + + public void setSize(int);// setSize(int) + + +public static final class Companion /* SmartSet.Companion*/ { + private final int ARRAY_THRESHOLD; + + @() + @org.jetbrains.annotations.NotNull() + public final SmartSet create();// create() + + @() + @org.jetbrains.annotations.NotNull() + public final SmartSet create(@org.jetbrains.annotations.NotNull() java.util.Collection);// create(java.util.Collection) + + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.kt b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.kt index a05ffc720d9..0a6ded8a425 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/ImplementingMutableSet.kt @@ -26,3 +26,4 @@ class SmartSet private constructor() : AbstractSet(), MutableSet { size = 0 } } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/InheritingInterfaceDefaultImpls.lib.java b/compiler/testData/asJava/lightClasses/ideRegression/InheritingInterfaceDefaultImpls.lib.java new file mode 100644 index 00000000000..69b1eb1b158 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/InheritingInterfaceDefaultImpls.lib.java @@ -0,0 +1,16 @@ +public final class Inheritor /* p.Inheritor*/ implements p.I, p.I2 { + @org.jetbrains.annotations.NotNull() + @p.Anno(s = {"S"}) + public java.lang.String bar();// bar() + + @org.jetbrains.annotations.NotNull() + @p.Bueno(anno = @p.Anno(s = {"G"})) + public java.lang.String foo();// foo() + + public Inheritor();// .ctor() + + public final void f();// f() + + public void g();// g() + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.fir.java new file mode 100644 index 00000000000..7314bddfe8a --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.fir.java @@ -0,0 +1,8 @@ +public final class C /* p.C*/ { + public C();// .ctor() + + public int af();// af() + + public int getAp();// getAp() + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.kt b/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.kt index 3475ce30efe..d747ff11b73 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingFinalInternal.kt @@ -10,4 +10,5 @@ class C : A() { } } -// LAZINESS:NoConsistency \ No newline at end of file +// LAZINESS:NoConsistency +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.fir.java new file mode 100644 index 00000000000..7ea4cca3fd8 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.fir.java @@ -0,0 +1,14 @@ +public final class C /* p.C*/ { + private final int ip; + + public C();// .ctor() + + public int ();// () + + public int af();// af() + + public int getAp();// getAp() + + public int getIp();// getIp() + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.kt b/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.kt index cf16eac9057..36d861278a8 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingInternal.kt @@ -14,3 +14,4 @@ class C : A(), I { } // LAZINESS:NoLaziness +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.fir.java b/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.fir.java new file mode 100644 index 00000000000..7314bddfe8a --- /dev/null +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.fir.java @@ -0,0 +1,8 @@ +public final class C /* p.C*/ { + public C();// .ctor() + + public int af();// af() + + public int getAp();// getAp() + +} diff --git a/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.kt b/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.kt index b1c9296ec36..177314718d4 100644 --- a/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.kt +++ b/compiler/testData/asJava/lightClasses/ideRegression/OverridingProtected.kt @@ -11,4 +11,5 @@ class C : A() { } // LAZINESS:NoLaziness -// FIR_COMPARISON \ No newline at end of file +// FIR_COMPARISON +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.lib.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.lib.java new file mode 100644 index 00000000000..f5d0fb5615f --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Class.lib.java @@ -0,0 +1,99 @@ +public final class Class /* Class*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.String notNullVal; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String privateNN; + + @org.jetbrains.annotations.NotNull() + private java.lang.String notNullVar; + + @org.jetbrains.annotations.Nullable() + private final java.lang.String nullableVal; + + @org.jetbrains.annotations.Nullable() + private final java.lang.String privateN; + + @org.jetbrains.annotations.Nullable() + private java.lang.String nullableVar; + + public java.lang.String lateInitVar; + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNotNullValWithGet();// getNotNullValWithGet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNotNullVarWithGetSet();// getNotNullVarWithGetSet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNullableValWithGet();// getNullableValWithGet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNullableVarWithGetSet();// getNullableVarWithGetSet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String notNullWithN();// notNullWithN() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public final java.lang.String nullableWithNN();// nullableWithNN() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getLateInitVar();// getLateInitVar() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getNotNullVal();// getNotNullVal() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getNotNullVar();// getNotNullVar() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String notNull(@org.jetbrains.annotations.NotNull() java.lang.String);// notNull(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public final java.lang.String notNullWithNN();// notNullWithNN() + + @org.jetbrains.annotations.NotNull() + public final void setNullableVarWithGetSet(@org.jetbrains.annotations.Nullable() java.lang.String);// setNullableVarWithGetSet(java.lang.String) + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNullableVal();// getNullableVal() + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getNullableVar();// getNullableVar() + + @org.jetbrains.annotations.Nullable() + public final java.lang.String nullable(@org.jetbrains.annotations.Nullable() java.lang.String);// nullable(java.lang.String) + + @org.jetbrains.annotations.Nullable() + public final java.lang.String nullableWithN();// nullableWithN() + + @org.jetbrains.annotations.Nullable() + public final void setNotNullVarWithGetSet(@org.jetbrains.annotations.NotNull() java.lang.String);// setNotNullVarWithGetSet(java.lang.String) + + private static final java.lang.String notNullVal$lambda-2();// notNullVal$lambda-2() + + private static final java.lang.String notNullVar$lambda-3();// notNullVar$lambda-3() + + private static final java.lang.String nullableVal$lambda-0();// nullableVal$lambda-0() + + private static final java.lang.String nullableVar$lambda-1();// nullableVar$lambda-1() + + private static final java.lang.String privateN$lambda-5();// privateN$lambda-5() + + private static final java.lang.String privateNN$lambda-4();// privateNN$lambda-4() + + public Class();// .ctor() + + public final void setLateInitVar(@org.jetbrains.annotations.NotNull() java.lang.String);// setLateInitVar(java.lang.String) + + public final void setNotNullVar(@org.jetbrains.annotations.NotNull() java.lang.String);// setNotNullVar(java.lang.String) + + public final void setNullableVar(@org.jetbrains.annotations.Nullable() java.lang.String);// setNullableVar(java.lang.String) + +} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.fir.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.fir.java new file mode 100644 index 00000000000..65858f2a14f --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.fir.java @@ -0,0 +1,20 @@ +public final class ClassObjectField /* ClassObjectField*/ { + @org.jetbrains.annotations.NotNull() + public static final ClassObjectField.Companion Companion; + + public ClassObjectField();// .ctor() + + +public static final class Companion /* ClassObjectField.Companion*/ { + @org.jetbrains.annotations.Nullable() + private final java.lang.String x; + + @org.jetbrains.annotations.Nullable() + private final java.lang.String y; + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getX();// getX() + + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.lib.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.lib.java new file mode 100644 index 00000000000..8ca58ac8f98 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/ClassObjectField.lib.java @@ -0,0 +1,24 @@ +public final class ClassObjectField /* ClassObjectField*/ { + @org.jetbrains.annotations.NotNull() + public static final ClassObjectField.Companion Companion; + + @org.jetbrains.annotations.Nullable() + private static final java.lang.String x; + + @org.jetbrains.annotations.Nullable() + private static final java.lang.String y; + + private static final java.lang.String x$lambda-0();// x$lambda-0() + + private static final java.lang.String y$lambda-1();// y$lambda-1() + + public ClassObjectField();// .ctor() + + +public static final class Companion /* ClassObjectField.Companion*/ { + @org.jetbrains.annotations.Nullable() + public final java.lang.String getX();// getX() + + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/FileFacade.lib.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/FileFacade.lib.java new file mode 100644 index 00000000000..51c6cc86ed1 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/FileFacade.lib.java @@ -0,0 +1,92 @@ +public final class FileFacadeKt /* FileFacadeKt*/ { + @org.jetbrains.annotations.NotNull() + private static final java.lang.String notNullVal; + + @org.jetbrains.annotations.NotNull() + private static final java.lang.String privateNn; + + @org.jetbrains.annotations.NotNull() + private static java.lang.String notNullVar; + + @org.jetbrains.annotations.Nullable() + private static final java.lang.String nullableVal; + + @org.jetbrains.annotations.Nullable() + private static final java.lang.String privateN; + + @org.jetbrains.annotations.Nullable() + private static java.lang.String nullableVar; + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNotNullValWithGet();// getNotNullValWithGet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNotNullVarWithGetSet();// getNotNullVarWithGetSet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNullableValWithGet();// getNullableValWithGet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNullableVarWithGetSet();// getNullableVarWithGetSet() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String notNullWithN();// notNullWithN() + + @org.jetbrains.annotations.NotNull() + @org.jetbrains.annotations.Nullable() + public static final java.lang.String nullableWithNN();// nullableWithNN() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getNotNullVal();// getNotNullVal() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getNotNullVar();// getNotNullVar() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String notNull(@org.jetbrains.annotations.NotNull() java.lang.String);// notNull(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String notNullWithNN();// notNullWithNN() + + @org.jetbrains.annotations.NotNull() + public static final void setNullableVarWithGetSet(@org.jetbrains.annotations.Nullable() java.lang.String);// setNullableVarWithGetSet(java.lang.String) + + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNullableVal();// getNullableVal() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.String getNullableVar();// getNullableVar() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.String nullable(@org.jetbrains.annotations.Nullable() java.lang.String);// nullable(java.lang.String) + + @org.jetbrains.annotations.Nullable() + public static final java.lang.String nullableWithN();// nullableWithN() + + @org.jetbrains.annotations.Nullable() + public static final void setNotNullVarWithGetSet(@org.jetbrains.annotations.NotNull() java.lang.String);// setNotNullVarWithGetSet(java.lang.String) + + private static final java.lang.String notNullVal$lambda-2();// notNullVal$lambda-2() + + private static final java.lang.String notNullVar$lambda-3();// notNullVar$lambda-3() + + private static final java.lang.String nullableVal$lambda-0();// nullableVal$lambda-0() + + private static final java.lang.String nullableVar$lambda-1();// nullableVar$lambda-1() + + private static final java.lang.String privateFun(java.lang.String, java.lang.String);// privateFun(java.lang.String, java.lang.String) + + private static final java.lang.String privateN$lambda-5();// privateN$lambda-5() + + private static final java.lang.String privateNn$lambda-4();// privateNn$lambda-4() + + public static final void setNotNullVar(@org.jetbrains.annotations.NotNull() java.lang.String);// setNotNullVar(java.lang.String) + + public static final void setNullableVar(@org.jetbrains.annotations.Nullable() java.lang.String);// setNullableVar(java.lang.String) + +} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Generic.fir.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Generic.fir.java new file mode 100644 index 00000000000..256deed98e7 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/Generic.fir.java @@ -0,0 +1,12 @@ +public abstract interface Generic /* Generic*/ { + @org.jetbrains.annotations.Nullable() + public abstract N a1(@org.jetbrains.annotations.Nullable() N);// a1(N) + + @org.jetbrains.annotations.Nullable() + public abstract NN b1(@org.jetbrains.annotations.Nullable() NN);// b1(NN) + + public abstract N a(N);// a(N) + + public abstract NN b(NN);// b(NN) + +} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.fir.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.fir.java new file mode 100644 index 00000000000..bd837856d0e --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.fir.java @@ -0,0 +1,10 @@ +public final class C /* C*/ implements Tr { + private final int v; + + public C();// .ctor() + + public int foo();// foo() + + public int getV();// getV() + +} diff --git a/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.lib.java b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.lib.java new file mode 100644 index 00000000000..ac0c1b50c36 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/nullabilityAnnotations/IntOverridesAny.lib.java @@ -0,0 +1,14 @@ +public final class C /* C*/ implements Tr { + private final int v; + + @org.jetbrains.annotations.NotNull() + public java.lang.Integer foo();// foo() + + @org.jetbrains.annotations.NotNull() + public java.lang.Integer getV();// getV() + + private static final int v$lambda-0();// v$lambda-0() + + public C();// .ctor() + +} diff --git a/compiler/testData/asJava/lightClasses/object/SimpleObject.fir.java b/compiler/testData/asJava/lightClasses/object/SimpleObject.fir.java new file mode 100644 index 00000000000..84fee3eb321 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/object/SimpleObject.fir.java @@ -0,0 +1,26 @@ +public final class A /* pack.A*/ { + @org.jetbrains.annotations.NotNull() + private static final java.lang.String cv = "A" /* initializer type: java.lang.String */; + + @org.jetbrains.annotations.NotNull() + private static java.lang.String v; + + @org.jetbrains.annotations.NotNull() + public static final pack.A INSTANCE; + + private static final int c; + + private static final int cc = 1 /* initializer type: int */; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getV();// getV() + + private A();// .ctor() + + public final int f();// f() + + public final int getC();// getC() + + public final void setV(@org.jetbrains.annotations.NotNull() java.lang.String);// setV(java.lang.String) + +} diff --git a/compiler/testData/asJava/lightClasses/object/SimpleObject.lib.java b/compiler/testData/asJava/lightClasses/object/SimpleObject.lib.java new file mode 100644 index 00000000000..ee1f8a69875 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/object/SimpleObject.lib.java @@ -0,0 +1,30 @@ +public final class A /* pack.A*/ { + @org.jetbrains.annotations.NotNull() + private static java.lang.String v; + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String cv = "A" /* initializer type: java.lang.String */ /* constant value A */; + + @org.jetbrains.annotations.NotNull() + public static final pack.A INSTANCE; + + private static final int c; + + public static final int cc = 1 /* initializer type: int */ /* constant value 1 */; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getV();// getV() + + private A();// .ctor() + + private static final int c$lambda-0();// c$lambda-0() + + private static final java.lang.String v$lambda-1();// v$lambda-1() + + public final int f();// f() + + public final int getC();// getC() + + public final void setV(@org.jetbrains.annotations.NotNull() java.lang.String);// setV(java.lang.String) + +} diff --git a/compiler/testData/asJava/lightClasses/publicField/CompanionObject.lib.java b/compiler/testData/asJava/lightClasses/publicField/CompanionObject.lib.java new file mode 100644 index 00000000000..010ee8409c8 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/publicField/CompanionObject.lib.java @@ -0,0 +1,17 @@ +public final class C /* C*/ { + @kotlin.jvm.JvmField() + @org.jetbrains.annotations.NotNull() + public static final java.lang.String foo; + + @org.jetbrains.annotations.NotNull() + public static final C.Companion Companion; + + private static final java.lang.String foo$lambda-0();// foo$lambda-0() + + public C();// .ctor() + + +public static final class Companion /* C.Companion*/ { + private Companion();// .ctor() + +}} diff --git a/compiler/testData/asJava/lightClasses/publicField/Simple.lib.java b/compiler/testData/asJava/lightClasses/publicField/Simple.lib.java new file mode 100644 index 00000000000..f7231f1ba73 --- /dev/null +++ b/compiler/testData/asJava/lightClasses/publicField/Simple.lib.java @@ -0,0 +1,10 @@ +public final class C /* C*/ { + @kotlin.jvm.JvmField() + @org.jetbrains.annotations.NotNull() + public final java.lang.String foo; + + private static final java.lang.String foo$lambda-0();// foo$lambda-0() + + public C();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.fir.java b/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.fir.java new file mode 100644 index 00000000000..3c463e3b328 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.fir.java @@ -0,0 +1,11 @@ +@kotlin.annotation.Target() +public abstract @interface A0 /* A0*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A1 /* A1*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A2 /* A2*/ { +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.lib.java b/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.lib.java new file mode 100644 index 00000000000..97387fb888e --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/annotationTargets_1_6.lib.java @@ -0,0 +1,5 @@ +@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME) +@java.lang.annotation.Target(value = {java.lang.annotation.ElementType.PARAMETER}) +@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.VALUE_PARAMETER, kotlin.annotation.AnnotationTarget.TYPE, kotlin.annotation.AnnotationTarget.TYPE_PARAMETER}) +public abstract @interface A2 /* A2*/ { +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.fir.java b/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.fir.java new file mode 100644 index 00000000000..6575e978458 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.fir.java @@ -0,0 +1,13 @@ +public abstract @interface Anno /* Anno*/ { +} + +public final class TestClass /* TestClass*/ { + private int hello; + + public TestClass(int);// .ctor(int) + + public final int getHello();// getHello() + + public final void setHello(@Anno() int);// setHello(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.lib.java b/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.lib.java new file mode 100644 index 00000000000..200f7ce1b54 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/annotationWithSetParamPropertyModifier.lib.java @@ -0,0 +1,3 @@ +@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME) +public abstract @interface Anno /* Anno*/ { +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotations.fir.java b/compiler/testData/asJava/ultraLightClasses/annotations.fir.java new file mode 100644 index 00000000000..1758a2d43fc --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/annotations.fir.java @@ -0,0 +1,170 @@ +@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.FUNCTION, kotlin.annotation.AnnotationTarget.VALUE_PARAMETER, kotlin.annotation.AnnotationTarget.EXPRESSION}) +public abstract @interface Anno2 /* Anno2*/ { +} + +@kotlin.annotation.Target(allowedTargets = {kotlin.annotation.AnnotationTarget.CLASS, kotlin.annotation.AnnotationTarget.FUNCTION, kotlin.annotation.AnnotationTarget.VALUE_PARAMETER, kotlin.annotation.AnnotationTarget.EXPRESSION}) +public abstract @interface Anno3 /* Anno3*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.CLASS) +public abstract @interface Anno4 /* Anno4*/ { +} + +@kotlin.annotation.Target(allowedTargets = ?) +public abstract @interface Anno5 /* Anno5*/ { +} + +@kotlin.annotation.Target(allowedTargets = ?) +public abstract @interface Anno6 /* Anno6*/ { +} + +public abstract @interface AnnoWithCompanion /* AnnoWithCompanion*/ { + @org.jetbrains.annotations.NotNull() + public static final AnnoWithCompanion.Companion Companion; + + + class Companion ... + + } + +public static final class Companion /* AnnoWithCompanion.Companion*/ { + @() + private final int x; + + private Companion();// .ctor() + + public final int getX();// getX() + + public final void foo();// foo() + +} + +public abstract @interface Anno /* Anno*/ { + public abstract Anno[] x();// x() + + public abstract java.lang.String p();// p() + +} + +@Deprecated(message = "This anno is deprecated, use === instead", replaceWith = ?) +@kotlin.annotation.MustBeDocumented() +@kotlin.annotation.Retention(value = kotlin.annotation.AnnotationRetention.SOURCE) +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.CLASS) +public abstract @interface Fancy /* Fancy*/ { +} + +public abstract @interface ReplaceWith /* ReplaceWith*/ { + public abstract java.lang.String expression();// expression() + +} + +public abstract @interface AnnotatedAttribute /* AnnotatedAttribute*/ { + @Anno() + public abstract java.lang.String x();// x() + +} + +public abstract @interface Deprecated /* Deprecated*/ { + public abstract ReplaceWith replaceWith();// replaceWith() + + public abstract java.lang.String message();// message() + +} + +public abstract @interface Ann /* Ann*/ { + public abstract java.lang.Class arg2();// arg2() + + public abstract java.lang.Class arg1();// arg1() + +} + +@Anno() +public final class F /* F*/ implements java.lang.Runnable { + @Anno(p = "p") + @org.jetbrains.annotations.NotNull() + private java.lang.String prop; + + @Anno(p = "f") + public final void f(@Anno() @org.jetbrains.annotations.NotNull() java.lang.String);// f(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getProp();// getProp() + + public F();// .ctor() + + public final void setProp(@org.jetbrains.annotations.NotNull() java.lang.String);// setProp(java.lang.String) + +} + +public final class Foo /* Foo*/ { + @org.jetbrains.annotations.Nullable() + private java.lang.String x; + + @Anno() + public Foo(error.NonExistentClass);// .ctor(error.NonExistentClass) + + @Anno() + public final void f4(java.lang.String);// f4(java.lang.String) + + @Anno() + public final void setX(@org.jetbrains.annotations.Nullable() java.lang.String);// setX(java.lang.String) + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getX();// getX() + +} + +@Ann(arg1 = java.lang.String.class, arg2 = int.class) +public final class MyClass /* MyClass*/ { + public MyClass();// .ctor() + +} + +public final class Example /* Example*/ { + @Ann() + @org.jetbrains.annotations.NotNull() + private final java.lang.String foo; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String bar; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String quux; + + @Ann() + @org.jetbrains.annotations.NotNull() + public final java.lang.String getBar();// getBar() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getFoo();// getFoo() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getQuux();// getQuux() + + public Example(@org.jetbrains.annotations.NotNull() java.lang.String, @org.jetbrains.annotations.NotNull() java.lang.String, @Ann() @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String, java.lang.String, java.lang.String) + +} + +public final class CtorAnnotations /* CtorAnnotations*/ { + @Anno() + @org.jetbrains.annotations.NotNull() + private final java.lang.String x; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String y; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String z; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getX();// getX() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getY();// getY() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getZ();// getZ() + + public CtorAnnotations(@Anno() @org.jetbrains.annotations.NotNull() java.lang.String, @Anno() @org.jetbrains.annotations.NotNull() java.lang.String, @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String, java.lang.String, java.lang.String) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/annotations.kt b/compiler/testData/asJava/ultraLightClasses/annotations.kt index 8bc9bd0a040..126ed2b6a7f 100644 --- a/compiler/testData/asJava/ultraLightClasses/annotations.kt +++ b/compiler/testData/asJava/ultraLightClasses/annotations.kt @@ -62,4 +62,6 @@ class Example(@field:Ann val foo: String, // annotate Java field @get:Ann val bar: String, // annotate Java getter @param:Ann val quux: String) // annotate Java constructor parameter -class CtorAnnotations(@Anno val x: String, @param:Anno val y: String, val z: String) \ No newline at end of file +class CtorAnnotations(@Anno val x: String, @param:Anno val y: String, val z: String) + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/classModifiers.lib.java b/compiler/testData/asJava/ultraLightClasses/classModifiers.lib.java new file mode 100644 index 00000000000..881926311a8 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/classModifiers.lib.java @@ -0,0 +1,12 @@ +public abstract class Season /* pkg.Season*/ { + private Season();// .ctor() + + + class Nested ... + + } + +public static final class Nested /* pkg.Season.Nested*/ extends pkg.Season { + public Nested();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/constructors.fir.java b/compiler/testData/asJava/ultraLightClasses/constructors.fir.java new file mode 100644 index 00000000000..aa6af175210 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/constructors.fir.java @@ -0,0 +1,65 @@ +public final class TestConstructor /* TestConstructor*/ { + private TestConstructor(int);// .ctor(int) + +} + +public final class AAA /* AAA*/ { + public /* vararg */ AAA(@org.jetbrains.annotations.NotNull() int..., @org.jetbrains.annotations.NotNull() kotlin.jvm.functions.Function0);// .ctor(int[], kotlin.jvm.functions.Function0) + +} + +public final class B /* B*/ { +} + +public final class Outer /* Outer*/ { + public Outer();// .ctor() + + + + class Inner ... + + class Nested ... + + } + +public final class Inner /* Outer.Inner*/ { + public Inner(int, @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(int, java.lang.String) + +} + +public static final class Nested /* Outer.Nested*/ { + public Nested();// .ctor() + + public Nested(int, @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(int, java.lang.String) + +} + +public abstract class A /* A*/ { + @org.jetbrains.annotations.Nullable() + private final java.lang.String x; + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getX();// getX() + + protected A(@org.jetbrains.annotations.Nullable() java.lang.String);// .ctor(java.lang.String) + + + class C ... + + } + +public static final class C /* A.C*/ extends A { + public C();// .ctor() + +} + +public final class ClassWithPrivateCtor /* ClassWithPrivateCtor*/ { + @org.jetbrains.annotations.NotNull() + private final java.util.Set property; + + @org.jetbrains.annotations.NotNull() + public final java.util.Set getProperty();// getProperty() + + private ClassWithPrivateCtor(java.util.Set);// .ctor(java.util.Set) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/constructors.lib.java b/compiler/testData/asJava/ultraLightClasses/constructors.lib.java new file mode 100644 index 00000000000..f35bde85211 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/constructors.lib.java @@ -0,0 +1,10 @@ +public final class ClassWithPrivateCtor /* ClassWithPrivateCtor*/ { + @org.jetbrains.annotations.NotNull() + private final java.util.Set property; + + @org.jetbrains.annotations.NotNull() + public final java.util.Set getProperty();// getProperty() + + private ClassWithPrivateCtor(java.util.Set);// .ctor(java.util.Set) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/coroutines.lib.java b/compiler/testData/asJava/ultraLightClasses/coroutines.lib.java new file mode 100644 index 00000000000..16397d60b63 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/coroutines.lib.java @@ -0,0 +1,5 @@ +public abstract interface Base /* Base*/ { + @org.jetbrains.annotations.Nullable() + public abstract java.lang.Object foo(@org.jetbrains.annotations.NotNull() kotlin.coroutines.Continuation);// foo(kotlin.coroutines.Continuation) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/dataClasses.lib.java b/compiler/testData/asJava/ultraLightClasses/dataClasses.lib.java new file mode 100644 index 00000000000..63b55acd695 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/dataClasses.lib.java @@ -0,0 +1,29 @@ +public final class Person /* Person*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.String name; + + private int age; + + @org.jetbrains.annotations.NotNull() + public final Person copy(@org.jetbrains.annotations.NotNull() java.lang.String);// copy(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public final java.lang.String component1();// component1() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getName();// getName() + + @org.jetbrains.annotations.NotNull() + public java.lang.String toString();// toString() + + public Person(@org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String) + + public boolean equals(@org.jetbrains.annotations.Nullable() java.lang.Object);// equals(java.lang.Object) + + public final int getAge();// getAge() + + public final void setAge(int);// setAge(int) + + public int hashCode();// hashCode() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/defaultMethodInKotlinWithSettingAll.fir.java b/compiler/testData/asJava/ultraLightClasses/defaultMethodInKotlinWithSettingAll.fir.java new file mode 100644 index 00000000000..44122cd3bce --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/defaultMethodInKotlinWithSettingAll.fir.java @@ -0,0 +1,9 @@ +public abstract interface KtInterface /* KtInterface*/ { + public abstract void defaultFun();// defaultFun() + + public abstract void withoutBody();// withoutBody() + + + class DefaultImpls ... + + } diff --git a/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.fir.java b/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.fir.java new file mode 100644 index 00000000000..9a792729505 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.fir.java @@ -0,0 +1,33 @@ +public abstract @interface SimpleAnn /* SimpleAnn*/ { + public abstract java.lang.String value();// value() + +} + +public abstract @interface Ann /* Ann*/ { + public abstract SimpleAnn[] t();// t() + + public abstract int x();// x() + + public abstract java.lang.Class z();// z() + + public abstract java.lang.Class[] e();// e() + + public abstract java.lang.String y();// y() + + public abstract kotlin.DeprecationLevel depr();// depr() + +} + +public abstract interface Base /* Base*/ { + @Ann(x = 1L, y = "134", z = java.lang.String.class, e = ?, depr = kotlin.DeprecationLevel.WARNING, t = ?) + public abstract void foo(@Ann(x = 2L, y = "324", z = Ann.class, e = ?, depr = kotlin.DeprecationLevel.WARNING, t = ?) @org.jetbrains.annotations.NotNull() java.lang.String);// foo(java.lang.String) + +} + +public final class Derived /* Derived*/ implements Base { + @Ann(x = 1L, y = "134", z = java.lang.String.class, e = ?, depr = kotlin.DeprecationLevel.WARNING, t = ?) + public void foo(@Ann(x = 2L, y = "324", z = Ann.class, e = ?, depr = kotlin.DeprecationLevel.WARNING, t = ?) @org.jetbrains.annotations.NotNull() java.lang.String);// foo(java.lang.String) + + public Derived(@org.jetbrains.annotations.NotNull() Base);// .ctor(Base) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.lib.java b/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.lib.java new file mode 100644 index 00000000000..1c0ffab33b6 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/delegatesWithAnnotations.lib.java @@ -0,0 +1,5 @@ +@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME) +public abstract @interface SimpleAnn /* SimpleAnn*/ { + public abstract java.lang.String value();// value() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.fir.java b/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.fir.java new file mode 100644 index 00000000000..5a83d75dab4 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.fir.java @@ -0,0 +1,38 @@ +public abstract interface Base /* Base*/ { + public abstract int foo(java.lang.String, @org.jetbrains.annotations.Nullable() java.lang.Object);// foo(java.lang.String, java.lang.Object) + + public abstract int getX();// getX() + + public abstract int getY();// getY() + + public abstract void printMessage();// printMessage() + + public abstract void printMessageLine();// printMessageLine() + + public abstract void setY(int);// setY(int) + +} + +public final class BaseImpl /* BaseImpl*/ implements Base { + private final int x; + + public BaseImpl(int);// .ctor(int) + + public final int getX();// getX() + + public void printMessage();// printMessage() + + public void printMessageLine();// printMessageLine() + +} + +public final class Derived /* Derived*/ implements Base { + public Derived(@org.jetbrains.annotations.NotNull() Base);// .ctor(Base) + + public int foo(java.lang.String, @org.jetbrains.annotations.Nullable() java.lang.Object);// foo(java.lang.String, java.lang.Object) + + public void printMessage();// printMessage() + + public void printMessageLine();// printMessageLine() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.kt b/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.kt index 468595731e8..2c88a74e4b2 100644 --- a/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.kt +++ b/compiler/testData/asJava/ultraLightClasses/delegatingToInterfaces.kt @@ -17,3 +17,4 @@ class BaseImpl(val x: Int) : Base { class Derived(b: Base) : Base by b { override fun printMessage() { print("abc") } } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/dollarsInNameLocal.lib.java b/compiler/testData/asJava/ultraLightClasses/dollarsInNameLocal.lib.java new file mode 100644 index 00000000000..f4e41c46944 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/dollarsInNameLocal.lib.java @@ -0,0 +1,6 @@ +public final class Foo /* c.b.a.Foo*/ { + public Foo();// .ctor() + + public final void bar();// bar() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/enums.fir.java b/compiler/testData/asJava/ultraLightClasses/enums.fir.java new file mode 100644 index 00000000000..f4cd5c7836c --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/enums.fir.java @@ -0,0 +1,109 @@ +public enum Direction /* Direction*/ { + NORTH, + SOUTH, + WEST, + EAST; + + private Direction();// .ctor() + +} + +public enum Color /* Color*/ { + RED, + GREEN, + BLUE; + + private final int rgb; + + private Color(int);// .ctor(int) + + private Color(java.lang.String);// .ctor(java.lang.String) + + public final int getRgb();// getRgb() + +} + +public enum ProtocolState /* ProtocolState*/ { + WAITING { + WAITING();// .ctor() + + @org.jetbrains.annotations.NotNull() + public ProtocolState signal();// signal() + + }, + TALKING { + TALKING();// .ctor() + + @org.jetbrains.annotations.NotNull() + public ProtocolState signal();// signal() + + }; + + @org.jetbrains.annotations.NotNull() + public abstract ProtocolState signal();// signal() + + private ProtocolState();// .ctor() + +} + +public static final class WAITING /* ProtocolState.WAITING*/ extends ProtocolState { + WAITING();// .ctor() + + @org.jetbrains.annotations.NotNull() + public ProtocolState signal();// signal() + +} + +public static final class TALKING /* ProtocolState.TALKING*/ extends ProtocolState { + TALKING();// .ctor() + + @org.jetbrains.annotations.NotNull() + public ProtocolState signal();// signal() + +} + +public enum IntArithmetics /* IntArithmetics*/ { + PLUS { + PLUS();// .ctor() + + public int apply(int, int);// apply(int, int) + + }, + TIMES { + TIMES();// .ctor() + + public int apply(int, int);// apply(int, int) + + }; + + @org.jetbrains.annotations.NotNull() + public IntArithmetics applyAsInt(int, int);// applyAsInt(int, int) + + private IntArithmetics();// .ctor() + +} + +public static final class PLUS /* IntArithmetics.PLUS*/ extends IntArithmetics { + PLUS();// .ctor() + + public int apply(int, int);// apply(int, int) + +} + +public static final class TIMES /* IntArithmetics.TIMES*/ extends IntArithmetics { + TIMES();// .ctor() + + public int apply(int, int);// apply(int, int) + +} + +public final class C /* C*/ { + @org.jetbrains.annotations.Nullable() + private final Direction enumConst; + + @org.jetbrains.annotations.Nullable() + public final Direction getEnumConst();// getEnumConst() + + public C();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/enums.lib.java b/compiler/testData/asJava/ultraLightClasses/enums.lib.java new file mode 100644 index 00000000000..9f1cc754dfc --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/enums.lib.java @@ -0,0 +1,16 @@ +public abstract enum ProtocolState /* ProtocolState*/ { + WAITING, + TALKING; + + @org.jetbrains.annotations.NotNull() + public abstract ProtocolState signal();// signal() + + private ProtocolState();// .ctor() + + + + class TALKING ... + + class WAITING ... + + } diff --git a/compiler/testData/asJava/ultraLightClasses/generics.fir.java b/compiler/testData/asJava/ultraLightClasses/generics.fir.java new file mode 100644 index 00000000000..b5dac5032a9 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/generics.fir.java @@ -0,0 +1,81 @@ +public abstract class C /* C*/ { + @org.jetbrains.annotations.NotNull() + private java.util.List constructorParam; + + @org.jetbrains.annotations.Nullable() + private java.util.HashSet sHashSetProp; + + @org.jetbrains.annotations.Nullable() + private java.util.List csListProp; + + @org.jetbrains.annotations.Nullable() + private java.util.List sListProp; + + @org.jetbrains.annotations.Nullable() + private java.util.Set sMutableSetProp; + + @org.jetbrains.annotations.Nullable() + private java.util.Set sSetProp; + + @org.jetbrains.annotations.NotNull() + public abstract java.util.Collection> nested(@org.jetbrains.annotations.NotNull() java.util.List>);// nested(java.util.List>) + + @org.jetbrains.annotations.NotNull() + public abstract java.util.List listCS(@org.jetbrains.annotations.NotNull() java.util.List);// listCS(java.util.List) + + @org.jetbrains.annotations.NotNull() + public abstract java.util.List listS(@org.jetbrains.annotations.NotNull() java.util.List);// listS(java.util.List) + + @org.jetbrains.annotations.NotNull() + public abstract java.util.Set mutables(@org.jetbrains.annotations.NotNull() java.util.Collection, @org.jetbrains.annotations.NotNull() java.util.List>);// mutables(java.util.Collection, java.util.List>) + + @org.jetbrains.annotations.NotNull() + public final java.util.List getConstructorParam();// getConstructorParam() + + @org.jetbrains.annotations.Nullable() + public final > T max(@org.jetbrains.annotations.Nullable() java.util.Collection);// > max(java.util.Collection) + + @org.jetbrains.annotations.Nullable() + public final java.util.HashSet getSHashSetProp();// getSHashSetProp() + + @org.jetbrains.annotations.Nullable() + public final java.util.List getCsListProp();// getCsListProp() + + @org.jetbrains.annotations.Nullable() + public final java.util.List getSListProp();// getSListProp() + + @org.jetbrains.annotations.Nullable() + public final java.util.Set getSMutableSetProp();// getSMutableSetProp() + + @org.jetbrains.annotations.Nullable() + public final java.util.Set getSSetProp();// getSSetProp() + + public C(@org.jetbrains.annotations.NotNull() java.util.List);// .ctor(java.util.List) + + public final T foo(V, @org.jetbrains.annotations.NotNull() C, error.NonExistentClass);// foo(V, C, error.NonExistentClass) + + public final Q getW(Q);// getW(Q) + + public final void setConstructorParam(@org.jetbrains.annotations.NotNull() java.util.List);// setConstructorParam(java.util.List) + + public final void setCsListProp(@org.jetbrains.annotations.Nullable() java.util.List);// setCsListProp(java.util.List) + + public final void setSHashSetProp(@org.jetbrains.annotations.Nullable() java.util.HashSet);// setSHashSetProp(java.util.HashSet) + + public final void setSListProp(@org.jetbrains.annotations.Nullable() java.util.List);// setSListProp(java.util.List) + + public final void setSMutableSetProp(@org.jetbrains.annotations.Nullable() java.util.Set);// setSMutableSetProp(java.util.Set) + + public final void setSSetProp(@org.jetbrains.annotations.Nullable() java.util.Set);// setSSetProp(java.util.Set) + +} + +public class K /* K*/> { + public K();// .ctor() + +} + +public final class Sub /* Sub*/ extends K> { + public Sub();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/generics.kt b/compiler/testData/asJava/ultraLightClasses/generics.kt index 46343457d3f..4af8de7edc6 100644 --- a/compiler/testData/asJava/ultraLightClasses/generics.kt +++ b/compiler/testData/asJava/ultraLightClasses/generics.kt @@ -25,3 +25,5 @@ abstract class C(var constructorParam: List) { open class K> { } class Sub: K>() + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.fir.java b/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.fir.java new file mode 100644 index 00000000000..79dd979497c --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.fir.java @@ -0,0 +1,27 @@ +public final class MyList /* MyList*/ implements kotlin.collections.List { + @org.jetbrains.annotations.NotNull() + public java.lang.String get(int);// get(int) + + public MyList();// .ctor() + +} + +public abstract interface ASet /* ASet*/ extends kotlin.collections.MutableCollection { +} + +public abstract class MySet /* MySet*/ implements ASet { + public MySet();// .ctor() + + public boolean remove(@org.jetbrains.annotations.NotNull() java.lang.String);// remove(java.lang.String) + +} + +public abstract class SmartSet /* SmartSet*/ { + @org.jetbrains.annotations.NotNull() + public java.util.Iterator iterator();// iterator() + + private SmartSet();// .ctor() + + public boolean add(T);// add(T) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.kt b/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.kt index 9321536fccb..c6b8096b37a 100644 --- a/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.kt +++ b/compiler/testData/asJava/ultraLightClasses/implementingKotlinCollections.kt @@ -21,4 +21,6 @@ abstract class SmartSet private constructor() : AbstractMutableSet() { /* Should erasure T but UL classes does not support it in this case override fun contains(element: T): Boolean = true */ -} \ No newline at end of file +} + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/importAliases.fir.java b/compiler/testData/asJava/ultraLightClasses/importAliases.fir.java new file mode 100644 index 00000000000..a9a8f58a0cd --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/importAliases.fir.java @@ -0,0 +1,10 @@ +public final class O /* O*/ { + @org.jetbrains.annotations.NotNull() + public static final O INSTANCE; + + @() + public final void foo();// foo() + + private O();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.fir.java b/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.fir.java new file mode 100644 index 00000000000..5a9ac800f86 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.fir.java @@ -0,0 +1,94 @@ +public final class Prop /* Prop*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.Object someProp; + + public Prop();// .ctor() + +} + +final class null /* null*/ { + private ();// .ctor() + +} + +final class C /* C*/ { + @org.jetbrains.annotations.NotNull() + private final kotlin.jvm.functions.Function0 initChild; + + private final int y; + + @org.jetbrains.annotations.NotNull() + public final kotlin.jvm.functions.Function0 getInitChild();// getInitChild() + + public C(int);// .ctor(int) + + public final int getY();// getY() + +} + +final class null /* null*/ { + @org.jetbrains.annotations.NotNull() + public java.lang.String toString();// toString() + + private ();// .ctor() + +} + +public final class ValidPublicSupertype /* ValidPublicSupertype*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.Runnable x; + + @org.jetbrains.annotations.NotNull() + public final java.lang.Runnable bar();// bar() + + @org.jetbrains.annotations.NotNull() + public final java.lang.Runnable getX();// getX() + + public ValidPublicSupertype();// .ctor() + +} + +final class null /* null*/ implements java.lang.Runnable { + private ();// .ctor() + + public void run();// run() + +} + +final class null /* null*/ implements java.lang.Runnable { + private ();// .ctor() + + public void run();// run() + +} + +public abstract interface I /* I*/ { +} + +public final class InvalidPublicSupertype /* InvalidPublicSupertype*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.Object x; + + @org.jetbrains.annotations.NotNull() + public final java.lang.Object bar();// bar() + + @org.jetbrains.annotations.NotNull() + public final java.lang.Object getX();// getX() + + public InvalidPublicSupertype();// .ctor() + +} + +final class null /* null*/ implements I, java.lang.Runnable { + private ();// .ctor() + + public void run();// run() + +} + +final class null /* null*/ implements I, java.lang.Runnable { + private ();// .ctor() + + public void run();// run() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.kt b/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.kt index a7a84bcd45a..d09f97d9f09 100644 --- a/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.kt +++ b/compiler/testData/asJava/ultraLightClasses/inferringAnonymousObjectTypes.kt @@ -34,3 +34,4 @@ class InvalidPublicSupertype { override fun run() {} } } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/inheritance.fir.java b/compiler/testData/asJava/ultraLightClasses/inheritance.fir.java new file mode 100644 index 00000000000..5d25acbff53 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/inheritance.fir.java @@ -0,0 +1,78 @@ +public abstract interface Intf /* Intf*/ { + public abstract int v();// v() + +} + +public abstract interface IntfWithProp /* IntfWithProp*/ extends Intf { + public abstract int getX();// getX() + +} + +public abstract class Base /* Base*/ { + private int y; + + private int z; + + @org.jetbrains.annotations.Nullable() + protected java.lang.Integer v();// v() + + protected int getZ();// getZ() + + protected void setZ(int);// setZ(int) + + public Base(int);// .ctor(int) + + public abstract int abs();// abs() + + public final void nv();// nv() + + public int getX();// getX() + + public int getY();// getY() + + public void setY(int);// setY(int) + +} + +public final class Derived /* Derived*/ extends Base implements IntfWithProp { + private final int x; + + protected error.NonExistentClass v();// v() + + public Derived(int);// .ctor(int) + + public int abs();// abs() + + public int getX();// getX() + +} + +public abstract class AnotherDerived /* AnotherDerived*/ extends Base { + private final int x; + + private final int y; + + private final int z; + + protected final void v();// v() + + protected int getZ();// getZ() + + public AnotherDerived(int, int, int);// .ctor(int, int, int) + + public abstract int getAbstractProp();// getAbstractProp() + + public abstract void noReturn(@org.jetbrains.annotations.NotNull() java.lang.String);// noReturn(java.lang.String) + + public int getX();// getX() + + public int getY();// getY() + +} + +final class Private /* Private*/ { + public Private();// .ctor() + + public boolean getOverridesNothing();// getOverridesNothing() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/inheritance.kt b/compiler/testData/asJava/ultraLightClasses/inheritance.kt index dba936c8021..fbc21a0a5ac 100644 --- a/compiler/testData/asJava/ultraLightClasses/inheritance.kt +++ b/compiler/testData/asJava/ultraLightClasses/inheritance.kt @@ -29,3 +29,4 @@ private class Private { override val overridesNothing: Boolean get() = false } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/inlineClasses.kt b/compiler/testData/asJava/ultraLightClasses/inlineClasses.kt index 515a0380539..7d73790afe4 100644 --- a/compiler/testData/asJava/ultraLightClasses/inlineClasses.kt +++ b/compiler/testData/asJava/ultraLightClasses/inlineClasses.kt @@ -29,3 +29,4 @@ inline class InlineInheritance(val v: Int) : I { } // FIR_COMPARISON +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/inlineOnly.fir.java b/compiler/testData/asJava/ultraLightClasses/inlineOnly.fir.java new file mode 100644 index 00000000000..4416e0d36c4 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/inlineOnly.fir.java @@ -0,0 +1,4 @@ +public final class A /* A*/ { + public A();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/inlineOnly.kt b/compiler/testData/asJava/ultraLightClasses/inlineOnly.kt index e10179c4c6d..752896fd5a2 100644 --- a/compiler/testData/asJava/ultraLightClasses/inlineOnly.kt +++ b/compiler/testData/asJava/ultraLightClasses/inlineOnly.kt @@ -1,4 +1,5 @@ class A { + @Suppress("INVISIBLE_REFERENCE", "INVISIBLE_MEMBER") @kotlin.internal.InlineOnly inline fun foo() {} } diff --git a/compiler/testData/asJava/ultraLightClasses/inlineReified.kt b/compiler/testData/asJava/ultraLightClasses/inlineReified.kt index 664b14b5ae0..7e0c52a0b9e 100644 --- a/compiler/testData/asJava/ultraLightClasses/inlineReified.kt +++ b/compiler/testData/asJava/ultraLightClasses/inlineReified.kt @@ -10,4 +10,5 @@ class C { inline set(value) {} } -// FIR_COMPARISON \ No newline at end of file +// FIR_COMPARISON +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/jvmField.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmField.fir.java new file mode 100644 index 00000000000..f07a42e93b9 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmField.fir.java @@ -0,0 +1,85 @@ +public final class A /* A*/ { + @() + @org.jetbrains.annotations.NotNull() + private final java.util.Collection a; + + @() + private int b; + + @org.jetbrains.annotations.NotNull() + public static final A.Companion Companion; + + @org.jetbrains.annotations.NotNull() + public final java.util.Collection getA();// getA() + + public A();// .ctor() + + public final int getB();// getB() + + public final void setB(int);// setB(int) + + + class Companion ... + + } + +public static final class Companion /* A.Companion*/ { + @() + @org.jetbrains.annotations.NotNull() + private final java.util.Collection c; + + @() + private int d; + + @org.jetbrains.annotations.NotNull() + public final java.util.Collection getC();// getC() + + private Companion();// .ctor() + + public final int getD();// getD() + + public final void setD(int);// setD(int) + +} + +public abstract interface B /* B*/ { + @org.jetbrains.annotations.NotNull() + public static final B.Companion Companion; + + + class Companion ... + + } + +public static final class Companion /* B.Companion*/ { + @() + @org.jetbrains.annotations.NotNull() + private final java.util.Collection a; + + @org.jetbrains.annotations.NotNull() + public final java.util.Collection getA();// getA() + + private Companion();// .ctor() + +} + +public final class C /* C*/ { + @() + @org.jetbrains.annotations.NotNull() + private final java.util.Collection a; + + @() + private int b; + + @org.jetbrains.annotations.NotNull() + public final java.util.Collection getA();// getA() + + public C();// .ctor() + + public C(@() @org.jetbrains.annotations.NotNull() java.util.Collection, @() int);// .ctor(java.util.Collection, int) + + public final int getB();// getB() + + public final void setB(int);// setB(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmField.kt b/compiler/testData/asJava/ultraLightClasses/jvmField.kt index a8dd6c851d1..ee8c2111cdb 100644 --- a/compiler/testData/asJava/ultraLightClasses/jvmField.kt +++ b/compiler/testData/asJava/ultraLightClasses/jvmField.kt @@ -25,3 +25,4 @@ class C( @JvmField var b: Int = 1 ) +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/jvmName.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmName.fir.java new file mode 100644 index 00000000000..60ba0ef2856 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmName.fir.java @@ -0,0 +1,29 @@ +public final class C /* C*/ { + @() + @org.jetbrains.annotations.NotNull() + public final java.lang.String getXyz();// getXyz() + + @() + public final boolean getHasBigArity();// getHasBigArity() + + @() + public final int getRwProp();// getRwProp() + + @() + public final void foo(@org.jetbrains.annotations.NotNull() java.util.List);// foo(java.util.List) + + @() + public final void setRwProp(int);// setRwProp(int) + + @() + public final void setXyz(@org.jetbrains.annotations.NotNull() java.lang.String);// setXyz(java.lang.String) + + public C();// .ctor() + + public final int getRwProp();// getRwProp() + + public final void foo(@org.jetbrains.annotations.NotNull() java.util.List);// foo(java.util.List) + + public final void setRwProp(int);// setRwProp(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmOverloads.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmOverloads.fir.java new file mode 100644 index 00000000000..bd427699d54 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmOverloads.fir.java @@ -0,0 +1,54 @@ +public final class C /* C*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.String p2; + + @org.jetbrains.annotations.NotNull() + public static final C.Companion Companion; + + @org.jetbrains.annotations.Nullable() + private final java.lang.String type; + + private final boolean p1; + + @() + public C(@org.jetbrains.annotations.Nullable() java.lang.String, boolean, @org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String, boolean, java.lang.String) + + @() + public final void bar(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// bar(int, double, java.lang.String) + + @() + public final void baz(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// baz(int, double, java.lang.String) + + @() + public final void foo(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// foo(int, double, java.lang.String) + + @() + public final void foobar(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// foobar(int, double, java.lang.String) + + @() + public final void foobarbaz(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// foobarbaz(int, double, java.lang.String) + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getP2();// getP2() + + @org.jetbrains.annotations.Nullable() + public final java.lang.String getType();// getType() + + public final boolean getP1();// getP1() + + + class Companion ... + + } + +public static final class Companion /* C.Companion*/ { + @() + @() + public final void fooStatic(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// fooStatic(int, double, java.lang.String) + + @() + public final void foo123(int, double, @org.jetbrains.annotations.NotNull() java.lang.String);// foo123(int, double, java.lang.String) + + private Companion();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmRecord.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmRecord.fir.java new file mode 100644 index 00000000000..21d3a2f47c7 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmRecord.fir.java @@ -0,0 +1,24 @@ +@() +public final class MyRec /* pkg.MyRec*/ { + @org.jetbrains.annotations.NotNull() + private final java.lang.String name; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String component1();// component1() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getName();// getName() + + @org.jetbrains.annotations.NotNull() + public final pkg.MyRec copy(@org.jetbrains.annotations.NotNull() java.lang.String);// copy(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public java.lang.String toString();// toString() + + public MyRec(@org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String) + + public boolean equals(@org.jetbrains.annotations.Nullable() java.lang.Object);// equals(java.lang.Object) + + public int hashCode();// hashCode() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmRecord.kt b/compiler/testData/asJava/ultraLightClasses/jvmRecord.kt index 049b882cca6..e8f7561eec8 100644 --- a/compiler/testData/asJava/ultraLightClasses/jvmRecord.kt +++ b/compiler/testData/asJava/ultraLightClasses/jvmRecord.kt @@ -6,3 +6,5 @@ package pkg @JvmRecord data class MyRec(val name: String) +// JDK 15 should be used to compile this file +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/jvmRecord.lib.java b/compiler/testData/asJava/ultraLightClasses/jvmRecord.lib.java new file mode 100644 index 00000000000..e1615a173e4 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmRecord.lib.java @@ -0,0 +1,20 @@ +public final class MyRec /* pkg.MyRec*/ { + @org.jetbrains.annotations.NotNull() + public final java.lang.String component1();// component1() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String name();// name() + + @org.jetbrains.annotations.NotNull() + public final pkg.MyRec copy(@org.jetbrains.annotations.NotNull() java.lang.String);// copy(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public java.lang.String toString();// toString() + + public MyRec(@org.jetbrains.annotations.NotNull() java.lang.String);// .ctor(java.lang.String) + + public boolean equals(@org.jetbrains.annotations.Nullable() java.lang.Object);// equals(java.lang.Object) + + public int hashCode();// hashCode() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmSynthetic.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmSynthetic.fir.java new file mode 100644 index 00000000000..a29eb8be582 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmSynthetic.fir.java @@ -0,0 +1,30 @@ +public final class A /* A*/ { + @() + @() + private int y; + + @() + private int x; + + private int z; + + @() + public final int getZ();// getZ() + + @() + public final void foo();// foo() + + @() + public final void setZ(int);// setZ(int) + + public A();// .ctor() + + public final int getX();// getX() + + public final int getY();// getY() + + public final void setX(int);// setX(int) + + public final void setY(int);// setY(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.fir.java new file mode 100644 index 00000000000..d87ea9b742f --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.fir.java @@ -0,0 +1,18 @@ +public final class X /* X*/ { + private int v; + + private int w; + + @() + public final int getV();// getV() + + @() + public final void setW(int);// setW(int) + + public X();// .ctor() + + public final int getW();// getW() + + public final void setV(int);// setV(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.lib.java b/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.lib.java new file mode 100644 index 00000000000..949ad0536f4 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmSyntheticForAccessors.lib.java @@ -0,0 +1,12 @@ +public final class X /* X*/ { + private int v; + + private int w; + + public X();// .ctor() + + public final int getW();// getW() + + public final void setV(int);// setV(int) + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.fir.java b/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.fir.java new file mode 100644 index 00000000000..d333205188d --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.fir.java @@ -0,0 +1,71 @@ +public final class Inv /* Inv*/ { + public Inv();// .ctor() + +} + +public final class Out /* Out*/ { + public Out();// .ctor() + +} + +public final class OutPair /* OutPair*/ { + public OutPair();// .ctor() + +} + +public final class In /* In*/ { + public In();// .ctor() + +} + +public final class Final /* Final*/ { + public Final();// .ctor() + +} + +public class Open /* Open*/ { + public Open();// .ctor() + +} + +public final class Container /* Container*/ { + @() + @org.jetbrains.annotations.NotNull() + public final Out bar();// bar() + + @() + public final int bar(boolean, @org.jetbrains.annotations.NotNull() In, long);// bar(boolean, In, long) + + @() + public final int foo(boolean, @org.jetbrains.annotations.NotNull() Out);// foo(boolean, Out) + + @() + public final void deepOpen(@org.jetbrains.annotations.NotNull() Out>>);// deepOpen(Out>>) + + @org.jetbrains.annotations.NotNull() + public final OutPair, Out>> falseTrueFalse();// falseTrueFalse() + + @org.jetbrains.annotations.NotNull() + public final OutPair>> combination();// combination() + + public Container();// .ctor() + + public final void simpleIn(@org.jetbrains.annotations.NotNull() In);// simpleIn(In) + + public final void simpleOut(@org.jetbrains.annotations.NotNull() Out);// simpleOut(Out) + +} + +public abstract interface A /* A*/ { + @() + @org.jetbrains.annotations.NotNull() + public abstract Out foo();// foo() + +} + +public abstract interface B /* B*/ { + @() + @org.jetbrains.annotations.NotNull() + public abstract In foo();// foo() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.lib.java b/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.lib.java new file mode 100644 index 00000000000..7986c9b542c --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/jvmWildcardAnnotations.lib.java @@ -0,0 +1,4 @@ +public final class OutPair /* OutPair*/ { + public OutPair();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/lateinitProperty.fir.java b/compiler/testData/asJava/ultraLightClasses/lateinitProperty.fir.java new file mode 100644 index 00000000000..40028313b5c --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/lateinitProperty.fir.java @@ -0,0 +1,94 @@ +public class A /* A*/ { + public java.lang.String a; + + public java.lang.String b; + + public java.lang.String c; + + public java.lang.String d; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getA();// getA() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getB();// getB() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getC();// getC() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getD();// getD() + + protected final void setC(@org.jetbrains.annotations.NotNull() java.lang.String);// setC(java.lang.String) + + public A();// .ctor() + + public final void setA(@org.jetbrains.annotations.NotNull() java.lang.String);// setA(java.lang.String) + + public final void setD(@org.jetbrains.annotations.NotNull() java.lang.String);// setD(java.lang.String) + +} + +public class B /* B*/ { + public java.lang.String a; + + public java.lang.String b; + + public java.lang.String c; + + public java.lang.String d; + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getA();// getA() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getB();// getB() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getC();// getC() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getD();// getD() + + protected final void setC(@org.jetbrains.annotations.NotNull() java.lang.String);// setC(java.lang.String) + + public B();// .ctor() + + public final void setA(@org.jetbrains.annotations.NotNull() java.lang.String);// setA(java.lang.String) + + public final void setD(@org.jetbrains.annotations.NotNull() java.lang.String);// setD(java.lang.String) + +} + +public class C /* C*/ { + protected java.lang.String a; + + protected java.lang.String b; + + protected java.lang.String c; + + @org.jetbrains.annotations.NotNull() + protected final java.lang.String getA();// getA() + + @org.jetbrains.annotations.NotNull() + protected final java.lang.String getB();// getB() + + @org.jetbrains.annotations.NotNull() + protected final java.lang.String getC();// getC() + + protected final void setA(@org.jetbrains.annotations.NotNull() java.lang.String);// setA(java.lang.String) + + protected final void setC(@org.jetbrains.annotations.NotNull() java.lang.String);// setC(java.lang.String) + + public C();// .ctor() + +} + +public class D /* D*/ { + private java.lang.String a; + + private java.lang.String b; + + public D();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/lateinitProperty.kt b/compiler/testData/asJava/ultraLightClasses/lateinitProperty.kt index d664d81b00f..56344c3d3c8 100644 --- a/compiler/testData/asJava/ultraLightClasses/lateinitProperty.kt +++ b/compiler/testData/asJava/ultraLightClasses/lateinitProperty.kt @@ -40,3 +40,5 @@ open class D { private lateinit var b: String private set } + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/localClassDerived.fir.java b/compiler/testData/asJava/ultraLightClasses/localClassDerived.fir.java new file mode 100644 index 00000000000..aebe12fcf98 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/localClassDerived.fir.java @@ -0,0 +1,16 @@ +public final class Boo /* Boo*/ { + public Boo();// .ctor() + + public final void fooBar();// fooBar() + +} + +public static final class LocalClassBase /* null*/ { + public LocalClassBase();// .ctor() + +} + +public static final class LocalClassDerived /* null*/ extends Boo.LocalClassBase { + public LocalClassDerived();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/localClassDerived.kt b/compiler/testData/asJava/ultraLightClasses/localClassDerived.kt index 708b0ca037d..2dfd625215c 100644 --- a/compiler/testData/asJava/ultraLightClasses/localClassDerived.kt +++ b/compiler/testData/asJava/ultraLightClasses/localClassDerived.kt @@ -5,4 +5,6 @@ class Boo { class LocalClassDerived : LocalClassBase } -} \ No newline at end of file +} + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/objects.fir.java b/compiler/testData/asJava/ultraLightClasses/objects.fir.java new file mode 100644 index 00000000000..617803e9e3d --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/objects.fir.java @@ -0,0 +1,156 @@ +public final class C /* C*/ { + @org.jetbrains.annotations.NotNull() + public static final C.Companion Companion; + + public C();// .ctor() + + + + class Companion ... + + class Factory ... + + } + +public static final class Companion /* C.Companion*/ { + @() + @org.jetbrains.annotations.NotNull() + private java.lang.String x; + + @() + @org.jetbrains.annotations.NotNull() + public final java.lang.String getC(I);// getC(I) + + @() + public final void foo();// foo() + + @() + public final void setC(I, @org.jetbrains.annotations.NotNull() java.lang.String);// setC(I, java.lang.String) + + @() + public final void setC1(@org.jetbrains.annotations.NotNull() java.lang.String);// setC1(java.lang.String) + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getC1();// getC1() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getX();// getX() + + private Companion();// .ctor() + + public final void bar();// bar() + + public final void setX(@org.jetbrains.annotations.NotNull() java.lang.String);// setX(java.lang.String) + +} + +public static final class Factory /* C.Factory*/ { + private Factory();// .ctor() + +} + +public final class C1 /* C1*/ { + @org.jetbrains.annotations.NotNull() + private static final C1.Companion Companion; + + public C1();// .ctor() + + + class Companion ... + + } + +private static final class Companion /* C1.Companion*/ { + private Companion();// .ctor() + +} + +public abstract interface I /* I*/ { + @org.jetbrains.annotations.NotNull() + public static final I.Companion Companion; + + + class Companion ... + + } + +public static final class Companion /* I.Companion*/ { + private Companion();// .ctor() + +} + +public final class Obj /* Obj*/ implements java.lang.Runnable { + @() + @org.jetbrains.annotations.NotNull() + private static java.lang.String x; + + @org.jetbrains.annotations.NotNull() + public static final Obj INSTANCE; + + @() + public final int zoo();// zoo() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getX();// getX() + + private Obj();// .ctor() + + public final void setX(@org.jetbrains.annotations.NotNull() java.lang.String);// setX(java.lang.String) + + public void run();// run() + +} + +public final class ConstContainer /* ConstContainer*/ { + @org.jetbrains.annotations.NotNull() + private static final java.lang.String str = "one" /* initializer type: java.lang.String */; + + @org.jetbrains.annotations.NotNull() + public static final ConstContainer INSTANCE; + + private static final double complexFloat = 5.118281745910645 /* initializer type: double */; + + private static final double e = 2.7182818284 /* initializer type: double */; + + private static final float eFloat = 2.7182817f /* initializer type: float */; + + private static final int one = 1 /* initializer type: int */; + + private static final long complexLong = 2L /* initializer type: long */; + + private static final long oneLong = 1L /* initializer type: long */; + + private ConstContainer();// .ctor() + +} + +public final class ClassWithConstContainer /* ClassWithConstContainer*/ { + @org.jetbrains.annotations.NotNull() + public static final ClassWithConstContainer.Companion Companion; + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String str = "one" /* initializer type: java.lang.String */; + + public static final double complexFloat = 5.118281745910645 /* initializer type: double */; + + public static final double e = 2.7182818284 /* initializer type: double */; + + public static final float eFloat = 2.7182817f /* initializer type: float */; + + public static final int one = 1 /* initializer type: int */; + + public static final long complexLong = 2L /* initializer type: long */; + + public static final long oneLong = 1L /* initializer type: long */; + + public ClassWithConstContainer();// .ctor() + + + class Companion ... + + } + +public static final class Companion /* ClassWithConstContainer.Companion*/ { + private Companion();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/objects.kt b/compiler/testData/asJava/ultraLightClasses/objects.kt index 60ba1e2d1ff..44124c791ff 100644 --- a/compiler/testData/asJava/ultraLightClasses/objects.kt +++ b/compiler/testData/asJava/ultraLightClasses/objects.kt @@ -50,4 +50,6 @@ class ClassWithConstContainer { const val eFloat = 2.7182818284f // Float const val complexFloat = 2.7182818284f + 2.4 // Float } -} \ No newline at end of file +} + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/properties.fir.java b/compiler/testData/asJava/ultraLightClasses/properties.fir.java new file mode 100644 index 00000000000..12d2144761f --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/properties.fir.java @@ -0,0 +1,250 @@ +public final class Foo /* Foo*/ { + @org.jetbrains.annotations.NotNull() + private error.NonExistentClass delegatedProp$delegate; + + @org.jetbrains.annotations.NotNull() + private error.NonExistentClass lazyProp$delegate; + + @org.jetbrains.annotations.NotNull() + private final Foo b; + + @org.jetbrains.annotations.NotNull() + private final java.lang.Object arrayConst; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String CONSTANT_WITH_ESCAPES = "A\tB\nC\rD'E\"F\\G$H" /* initializer type: java.lang.String */; + + @org.jetbrains.annotations.NotNull() + private final java.lang.String SUBSYSTEM_DEPRECATED = "This subsystem is deprecated" /* initializer type: java.lang.String */; + + @org.jetbrains.annotations.NotNull() + private final kotlin.jvm.functions.Function1 sum; + + @org.jetbrains.annotations.NotNull() + private java.lang.Object privateVarWithGet; + + @org.jetbrains.annotations.NotNull() + private java.lang.String name; + + @org.jetbrains.annotations.NotNull() + private java.lang.String noAccessors; + + @org.jetbrains.annotations.NotNull() + private java.lang.String protectedWithPrivateSet; + + @org.jetbrains.annotations.NotNull() + public static final Foo.Companion Companion; + + @org.jetbrains.annotations.Nullable() + private java.lang.Boolean isEmptyMutable; + + @org.jetbrains.annotations.Nullable() + private java.lang.Boolean islowercase; + + @org.jetbrains.annotations.Nullable() + private java.lang.Integer counter2; + + @org.jetbrains.annotations.Nullable() + private java.lang.Integer getInt; + + @org.jetbrains.annotations.Nullable() + private java.lang.Integer isEmptyInt; + + private MyProperty delegatedProp2$delegate; + + private boolean c; + + private error.NonExistentClass privateDelegated$delegate; + + private final error.NonExistentClass d; + + private final error.NonExistentClass intConst; + + private final int f1; + + private final long e; + + private int counter; + + private int f2; + + private int internalWithPrivateSet; + + private int privateVarWithPrivateSet; + + private static final error.NonExistentClass contextBean; + + protected java.lang.String protectedLateinitVar; + + public error.NonExistentClass subject; + + public java.lang.String internalVarPrivateSet; + + @org.jetbrains.annotations.NotNull() + protected final java.lang.String getProtectedLateinitVar();// getProtectedLateinitVar() + + @org.jetbrains.annotations.NotNull() + protected final java.lang.String getProtectedWithPrivateSet();// getProtectedWithPrivateSet() + + @org.jetbrains.annotations.NotNull() + public final Foo getB();// getB() + + @org.jetbrains.annotations.NotNull() + public final java.lang.Object getArrayConst();// getArrayConst() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getDelegatedProp();// getDelegatedProp() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getInternalVarPrivateSet();// getInternalVarPrivateSet() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getLazyProp();// getLazyProp() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getName();// getName() + + @org.jetbrains.annotations.NotNull() + public final java.lang.String getStringRepresentation();// getStringRepresentation() + + @org.jetbrains.annotations.NotNull() + public final kotlin.jvm.functions.Function1 getSum();// getSum() + + @org.jetbrains.annotations.Nullable() + public final java.lang.Boolean getIslowercase();// getIslowercase() + + @org.jetbrains.annotations.Nullable() + public final java.lang.Boolean isEmptyMutable();// isEmptyMutable() + + @org.jetbrains.annotations.Nullable() + public final java.lang.Integer getCounter2();// getCounter2() + + @org.jetbrains.annotations.Nullable() + public final java.lang.Integer getGetInt();// getGetInt() + + @org.jetbrains.annotations.Nullable() + public final java.lang.Integer isEmptyInt();// isEmptyInt() + + private final int getPrivateDelegated();// getPrivateDelegated() + + private final java.lang.String getPrivateValWithGet();// getPrivateValWithGet() + + private final void setPrivateDelegated(int);// setPrivateDelegated(int) + + protected final int getF2();// getF2() + + protected final long getE();// getE() + + protected final void setF2(int);// setF2(int) + + protected final void setProtectedLateinitVar(@org.jetbrains.annotations.NotNull() java.lang.String);// setProtectedLateinitVar(java.lang.String) + + public Foo(int, @org.jetbrains.annotations.NotNull() Foo, boolean, error.NonExistentClass, long);// .ctor(int, Foo, boolean, error.NonExistentClass, long) + + public final boolean getC();// getC() + + public final boolean isEmpty();// isEmpty() + + public final error.NonExistentClass getIntConst();// getIntConst() + + public final error.NonExistentClass getSubject();// getSubject() + + public final int getCounter();// getCounter() + + public final int getDelegatedProp2();// getDelegatedProp2() + + public final int getF1();// getF1() + + public final int getIntProp(int);// getIntProp(int) + + public final int getInternalWithPrivateSet();// getInternalWithPrivateSet() + + public final void setC(boolean);// setC(boolean) + + public final void setCounter(int);// setCounter(int) + + public final void setCounter2(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setCounter2(java.lang.Integer) + + public final void setDelegatedProp(@org.jetbrains.annotations.NotNull() java.lang.String);// setDelegatedProp(java.lang.String) + + public final void setDelegatedProp2(int);// setDelegatedProp2(int) + + public final void setEmptyInt(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setEmptyInt(java.lang.Integer) + + public final void setEmptyMutable(@org.jetbrains.annotations.Nullable() java.lang.Boolean);// setEmptyMutable(java.lang.Boolean) + + public final void setGetInt(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setGetInt(java.lang.Integer) + + public final void setIslowercase(@org.jetbrains.annotations.Nullable() java.lang.Boolean);// setIslowercase(java.lang.Boolean) + + public final void setLazyProp(@org.jetbrains.annotations.NotNull() java.lang.String);// setLazyProp(java.lang.String) + + public final void setName(@org.jetbrains.annotations.NotNull() java.lang.String);// setName(java.lang.String) + + public final void setStringRepresentation(@org.jetbrains.annotations.NotNull() java.lang.String);// setStringRepresentation(java.lang.String) + + public final void setSubject(error.NonExistentClass);// setSubject(error.NonExistentClass) + + + class Companion ... + + } + +public static final class Companion /* Foo.Companion*/ { + private final int f1; + + private final int prop3; + + private int prop7; + + private Companion();// .ctor() + + public final int getF1();// getF1() + + public final int getProp3();// getProp3() + + public final int getProp7();// getProp7() + + public final void setProp7(int);// setProp7(int) + +} + +public final class MyProperty /* MyProperty*/ { + public MyProperty();// .ctor() + + public final int getValue(T, @org.jetbrains.annotations.NotNull() kotlin.reflect.KProperty);// getValue(T, kotlin.reflect.KProperty) + + public final void setValue(T, @org.jetbrains.annotations.NotNull() kotlin.reflect.KProperty, int);// setValue(T, kotlin.reflect.KProperty, int) + +} + +public final class Modifiers /* Modifiers*/ { + private final int plainField; + + public Modifiers();// .ctor() + + public final int getPlainField();// getPlainField() + +} + +public abstract interface A /* A*/ { + protected abstract int getInt1();// getInt1() + + public abstract int getInt2();// getInt2() + + public abstract void setInt2(int);// setInt2(int) + +} + +public final class Foo /* Foo*/ { + @org.jetbrains.annotations.NotNull() + public final Foo getFoo2();// getFoo2() + + @org.jetbrains.annotations.NotNull() + public final Foo getMeNonNullFoo();// getMeNonNullFoo() + + public Foo();// .ctor() + + public final error.NonExistentClass getFoo();// getFoo() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/properties.kt b/compiler/testData/asJava/ultraLightClasses/properties.kt index a66a95daeb9..0d609965aa3 100644 --- a/compiler/testData/asJava/ultraLightClasses/properties.kt +++ b/compiler/testData/asJava/ultraLightClasses/properties.kt @@ -106,4 +106,6 @@ class Foo { val foo get() = getMeNonNullFoo() val foo2: Foo get() = getMeNonNullFoo() fun getMeNonNullFoo() : Foo = Foo() -} \ No newline at end of file +} + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/simpleFunctions.fir.java b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.fir.java new file mode 100644 index 00000000000..18c466df26d --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.fir.java @@ -0,0 +1,31 @@ +public final class Foo /* Foo*/ { + @org.jetbrains.annotations.NotNull() + public final Foo onString(java.lang.String, @org.jetbrains.annotations.NotNull() kotlin.jvm.functions.Function1);// onString(java.lang.String, kotlin.jvm.functions.Function1) + + @org.jetbrains.annotations.NotNull() + public final Foo plus(int);// plus(int) + + @org.jetbrains.annotations.NotNull() + public final native java.lang.String externalFun(int);// externalFun(int) + + private final /* vararg */ java.lang.String bar3(Foo.Inner, @org.jetbrains.annotations.NotNull() Foo.Inner...);// bar3(Foo.Inner, Foo.Inner[]) + + public Foo();// .ctor() + + public final /* vararg */ void nullableVararg(@org.jetbrains.annotations.NotNull() java.lang.Object...);// nullableVararg(java.lang.Object[]) + + public final int bar4();// bar4() + + public final void bar2(error.NonExistentClass, error.NonExistentClass);// bar2(error.NonExistentClass, error.NonExistentClass) + + public void bar(int, @org.jetbrains.annotations.NotNull() java.lang.Object, @org.jetbrains.annotations.NotNull() Foo);// bar(int, java.lang.Object, Foo) + + + class Inner ... + + } + +public static final class Inner /* Foo.Inner*/ { + public Inner();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt index a5817bf6c6f..8fe84575b09 100644 --- a/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt +++ b/compiler/testData/asJava/ultraLightClasses/simpleFunctions.kt @@ -13,3 +13,5 @@ class Foo { class Inner {} } + +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.fir.java b/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.fir.java new file mode 100644 index 00000000000..f2fa4815254 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.fir.java @@ -0,0 +1,19 @@ +public final class MyException /* MyException*/ extends java.lang.Exception { + public MyException();// .ctor() + +} + +public final class C /* C*/ { + @() + @org.jetbrains.annotations.NotNull() + public final java.lang.String readFile(@org.jetbrains.annotations.NotNull() java.lang.String);// readFile(java.lang.String) + + @() + public C(int);// .ctor(int) + + @() + public final void baz();// baz() + + public C();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.lib.java b/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.lib.java new file mode 100644 index 00000000000..31ef343640c --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/throwsAnnotation.lib.java @@ -0,0 +1,4 @@ +public final class MyException /* MyException*/ extends java.lang.Exception { + public MyException();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/typeAliases.fir.java b/compiler/testData/asJava/ultraLightClasses/typeAliases.fir.java new file mode 100644 index 00000000000..4aa0e70daa6 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/typeAliases.fir.java @@ -0,0 +1,10 @@ +public final class O /* O*/ { + @org.jetbrains.annotations.NotNull() + public static final O INSTANCE; + + @() + public final void foo(int, @org.jetbrains.annotations.NotNull() java.lang.String);// foo(int, java.lang.String) + + private O();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/typeAliases.lib.java b/compiler/testData/asJava/ultraLightClasses/typeAliases.lib.java new file mode 100644 index 00000000000..8b137891791 --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/typeAliases.lib.java @@ -0,0 +1 @@ + diff --git a/compiler/testData/asJava/ultraLightClasses/typeAnnotations.fir.java b/compiler/testData/asJava/ultraLightClasses/typeAnnotations.fir.java new file mode 100644 index 00000000000..4604df0c1ac --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/typeAnnotations.fir.java @@ -0,0 +1,58 @@ +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A0 /* A0*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A1 /* A1*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A2 /* A2*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A3 /* A3*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A4 /* A4*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A5 /* A5*/ { +} + +@kotlin.annotation.Target(allowedTargets = kotlin.annotation.AnnotationTarget.VALUE_PARAMETER) +public abstract @interface A6 /* A6*/ { +} + +public abstract interface P /* P*/ { +} + +public final class X /* X*/ { + public X();// .ctor() + +} + +public final class Y /* Y*/ { + public Y();// .ctor() + +} + +public final class klass /* klass*/ { + @org.jetbrains.annotations.Nullable() + private final java.util.List y; + + private final int x; + + @org.jetbrains.annotations.NotNull() + public final X annotatedMethod(@org.jetbrains.annotations.NotNull() P>, @org.jetbrains.annotations.NotNull() Y[]);// annotatedMethod(P>, Y[]) + + @org.jetbrains.annotations.Nullable() + public final java.util.List getY();// getY() + + public klass();// .ctor() + + public final int getX();// getX() + +} diff --git a/compiler/testData/asJava/ultraLightClasses/typeAnnotations.kt b/compiler/testData/asJava/ultraLightClasses/typeAnnotations.kt index 0705dc6bff5..7c651bf241e 100644 --- a/compiler/testData/asJava/ultraLightClasses/typeAnnotations.kt +++ b/compiler/testData/asJava/ultraLightClasses/typeAnnotations.kt @@ -27,3 +27,4 @@ class klass { val x: @A0 Int = 2 val y: List<@A0 Int>? = null } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightClasses/wildcardOptimization.lib.java b/compiler/testData/asJava/ultraLightClasses/wildcardOptimization.lib.java new file mode 100644 index 00000000000..6394d9d76ef --- /dev/null +++ b/compiler/testData/asJava/ultraLightClasses/wildcardOptimization.lib.java @@ -0,0 +1,4 @@ +public final class Out /* Out*/ { + public Out();// .ctor() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/importAliases.fir.java b/compiler/testData/asJava/ultraLightFacades/importAliases.fir.java new file mode 100644 index 00000000000..dcbb60f5ec6 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/importAliases.fir.java @@ -0,0 +1,5 @@ +public final class ImportAliasesKt /* ImportAliasesKt*/ { + @() + public static final void foo();// foo() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/inlineOnly.fir.java b/compiler/testData/asJava/ultraLightFacades/inlineOnly.fir.java new file mode 100644 index 00000000000..2bba9598e40 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/inlineOnly.fir.java @@ -0,0 +1,2 @@ +public final class InlineOnlyKt /* InlineOnlyKt*/ { +} diff --git a/compiler/testData/asJava/ultraLightFacades/jvmField.fir.java b/compiler/testData/asJava/ultraLightFacades/jvmField.fir.java new file mode 100644 index 00000000000..3def9fbb49c --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/jvmField.fir.java @@ -0,0 +1,16 @@ +public final class JvmFieldKt /* JvmFieldKt*/ { + @() + @org.jetbrains.annotations.NotNull() + private static final java.util.Collection a; + + @() + private static int b; + + @org.jetbrains.annotations.NotNull() + public static final java.util.Collection getA();// getA() + + public static final int getB();// getB() + + public static final void setB(int);// setB(int) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/jvmField.kt b/compiler/testData/asJava/ultraLightFacades/jvmField.kt index 451977c84d7..8fae8a8866e 100644 --- a/compiler/testData/asJava/ultraLightFacades/jvmField.kt +++ b/compiler/testData/asJava/ultraLightFacades/jvmField.kt @@ -3,4 +3,5 @@ val a: Collection<*> = emptyList() @JvmField var b: Int = 1 -// FIR_COMPARISON \ No newline at end of file +// FIR_COMPARISON +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightFacades/jvmName.fir.java b/compiler/testData/asJava/ultraLightFacades/jvmName.fir.java new file mode 100644 index 00000000000..dfa631d049c --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/jvmName.fir.java @@ -0,0 +1,27 @@ +public final class JvmNameKt /* JvmNameKt*/ { + @() + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getXyz();// getXyz() + + @() + public static final boolean getHasBigArity();// getHasBigArity() + + @() + public static final int getRwProp();// getRwProp() + + @() + public static final void foo(@org.jetbrains.annotations.NotNull() java.util.List);// foo(java.util.List) + + @() + public static final void setRwProp(int);// setRwProp(int) + + @() + public static final void setXyz(@org.jetbrains.annotations.NotNull() java.lang.String);// setXyz(java.lang.String) + + public static final int getRwProp();// getRwProp() + + public static final void foo(@org.jetbrains.annotations.NotNull() java.util.List);// foo(java.util.List) + + public static final void setRwProp(int);// setRwProp(int) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.fir.java b/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.fir.java new file mode 100644 index 00000000000..78d6aef5f35 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.fir.java @@ -0,0 +1,33 @@ +public final class JvmWildcardAnnotationsKt /* JvmWildcardAnnotationsKt*/ { + @() + @org.jetbrains.annotations.NotNull() + public static final In foo3();// foo3() + + @() + @org.jetbrains.annotations.NotNull() + public static final Out bar();// bar() + + @() + @org.jetbrains.annotations.NotNull() + public static final error.NonExistentClass foo2();// foo2() + + @() + public static final int bar(boolean, @org.jetbrains.annotations.NotNull() In, long);// bar(boolean, In, long) + + @() + public static final int foo(boolean, @org.jetbrains.annotations.NotNull() Out);// foo(boolean, Out) + + @() + public static final void deepOpen(@org.jetbrains.annotations.NotNull() Out>>);// deepOpen(Out>>) + + @org.jetbrains.annotations.NotNull() + public static final OutPair, Out>> falseTrueFalse();// falseTrueFalse() + + @org.jetbrains.annotations.NotNull() + public static final OutPair>> combination();// combination() + + public static final void simpleIn(@org.jetbrains.annotations.NotNull() In);// simpleIn(In) + + public static final void simpleOut(@org.jetbrains.annotations.NotNull() Out);// simpleOut(Out) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.kt b/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.kt index ba325e60feb..e88a9bb448d 100644 --- a/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.kt +++ b/compiler/testData/asJava/ultraLightFacades/jvmWildcardAnnotations.kt @@ -29,3 +29,4 @@ fun foo2(): Out @JvmSuppressWildcards(true) fun foo3(): In +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightFacades/lateinitProperty.fir.java b/compiler/testData/asJava/ultraLightFacades/lateinitProperty.fir.java new file mode 100644 index 00000000000..50cddacf204 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/lateinitProperty.fir.java @@ -0,0 +1,28 @@ +public final class LateinitPropertyKt /* LateinitPropertyKt*/ { + private static java.lang.String b; + + private static java.lang.String c; + + public static java.lang.String a; + + public static java.lang.String d; + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getA();// getA() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getB();// getB() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getC();// getC() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getD();// getD() + + protected static final void setC(@org.jetbrains.annotations.NotNull() java.lang.String);// setC(java.lang.String) + + public static final void setA(@org.jetbrains.annotations.NotNull() java.lang.String);// setA(java.lang.String) + + public static final void setD(@org.jetbrains.annotations.NotNull() java.lang.String);// setD(java.lang.String) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/lateinitProperty.kt b/compiler/testData/asJava/ultraLightFacades/lateinitProperty.kt index fa252d3ba43..bdd7d3d26be 100644 --- a/compiler/testData/asJava/ultraLightFacades/lateinitProperty.kt +++ b/compiler/testData/asJava/ultraLightFacades/lateinitProperty.kt @@ -8,3 +8,4 @@ lateinit var c: String lateinit var d: String internal set +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightFacades/multifileFacade.fir.java b/compiler/testData/asJava/ultraLightFacades/multifileFacade.fir.java new file mode 100644 index 00000000000..d7a150c4969 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/multifileFacade.fir.java @@ -0,0 +1,14 @@ +@() +@() +public final class multifileFacade /* multifileFacade*/ { + private static final int x; + + public static final int x1 = 42 /* initializer type: int */; + + private static final int privateFoo();// privateFoo() + + public static final int foo();// foo() + + public static final int getX();// getX() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/multifileFacade.lib.java b/compiler/testData/asJava/ultraLightFacades/multifileFacade.lib.java new file mode 100644 index 00000000000..557a4ef9262 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/multifileFacade.lib.java @@ -0,0 +1,8 @@ +public final class multifileFacade /* multifileFacade*/ { + public static final int x1 = 42 /* initializer type: int */ /* constant value 42 */; + + public static final int foo();// foo() + + public static final int getX();// getX() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.fir.java b/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.fir.java new file mode 100644 index 00000000000..7efc56890d3 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.fir.java @@ -0,0 +1,6 @@ +@() +@() +public final class multifileFacade /* multifileFacade*/ { + public static final int foo();// foo() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.lib.java b/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.lib.java new file mode 100644 index 00000000000..3c9763d615a --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/multifileFacadeJvmName.lib.java @@ -0,0 +1,4 @@ +public final class multifileFacade /* multifileFacade*/ { + public static final int foo();// foo() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/properties.fir.java b/compiler/testData/asJava/ultraLightFacades/properties.fir.java new file mode 100644 index 00000000000..f6066012e17 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/properties.fir.java @@ -0,0 +1,180 @@ +public final class PropertiesKt /* PropertiesKt*/ { + @org.jetbrains.annotations.NotNull() + private static error.NonExistentClass delegatedProp$delegate; + + @org.jetbrains.annotations.NotNull() + private static error.NonExistentClass lazyProp$delegate; + + @org.jetbrains.annotations.NotNull() + private static final java.lang.Object arrayConst; + + @org.jetbrains.annotations.NotNull() + private static final java.lang.String x; + + @org.jetbrains.annotations.NotNull() + private static final kotlin.jvm.functions.Function1 sum; + + @org.jetbrains.annotations.NotNull() + private static java.lang.String name; + + @org.jetbrains.annotations.NotNull() + private static java.lang.String protectedWithPrivateSet; + + @org.jetbrains.annotations.NotNull() + private static java.lang.String x$1; + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String SUBSYSTEM_DEPRECATED = "This subsystem is deprecated" /* initializer type: java.lang.String */; + + @org.jetbrains.annotations.Nullable() + private static java.lang.Boolean isEmptyMutable; + + @org.jetbrains.annotations.Nullable() + private static java.lang.Boolean islowercase; + + @org.jetbrains.annotations.Nullable() + private static java.lang.Integer counter2; + + @org.jetbrains.annotations.Nullable() + private static java.lang.Integer getInt; + + @org.jetbrains.annotations.Nullable() + private static java.lang.Integer isEmptyInt; + + private static error.NonExistentClass delegatedProp2$delegate; + + private static final error.NonExistentClass intConst; + + private static final int f1; + + private static final int plainField; + + private static final int privateVal; + + private static final int privateVar; + + private static int counter; + + private static int f2; + + private static int int1; + + private static int int2; + + private static int internalWithPrivateSet; + + private static java.lang.String internalVarPrivateSet; + + private static java.lang.String protectedLateinitVar; + + public static error.NonExistentClass subject; + + @org.jetbrains.annotations.NotNull() + protected static final java.lang.String getProtectedLateinitVar();// getProtectedLateinitVar() + + @org.jetbrains.annotations.NotNull() + protected static final java.lang.String getProtectedWithPrivateSet();// getProtectedWithPrivateSet() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.Object getArrayConst();// getArrayConst() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getDelegatedProp();// getDelegatedProp() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getInternalVarPrivateSet();// getInternalVarPrivateSet() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getLazyProp();// getLazyProp() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getName();// getName() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getStringRepresentation();// getStringRepresentation() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getX();// getX() + + @org.jetbrains.annotations.NotNull() + public static final java.lang.String getX();// getX() + + @org.jetbrains.annotations.NotNull() + public static final kotlin.jvm.functions.Function1 getSum();// getSum() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.Boolean getIslowercase();// getIslowercase() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.Boolean isEmptyMutable();// isEmptyMutable() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.Integer getCounter2();// getCounter2() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.Integer getGetInt();// getGetInt() + + @org.jetbrains.annotations.Nullable() + public static final java.lang.Integer isEmptyInt();// isEmptyInt() + + private static final int privateFun();// privateFun() + + protected static final int getF2();// getF2() + + protected static final int getInt1();// getInt1() + + protected static final void setF2(int);// setF2(int) + + protected static final void setProtectedLateinitVar(@org.jetbrains.annotations.NotNull() java.lang.String);// setProtectedLateinitVar(java.lang.String) + + public static final boolean isEmpty();// isEmpty() + + public static final error.NonExistentClass getDelegatedProp2();// getDelegatedProp2() + + public static final error.NonExistentClass getIntConst();// getIntConst() + + public static final error.NonExistentClass getSubject();// getSubject() + + public static final int getCounter();// getCounter() + + public static final int getF1();// getF1() + + public static final int getInt2();// getInt2() + + public static final int getIntProp(int);// getIntProp(int) + + public static final int getInternalWithPrivateSet();// getInternalWithPrivateSet() + + public static final int getPlainField();// getPlainField() + + public static final int getValue(error.NonExistentClass, @org.jetbrains.annotations.NotNull() kotlin.reflect.KProperty);// getValue(error.NonExistentClass, kotlin.reflect.KProperty) + + public static final void setCounter(int);// setCounter(int) + + public static final void setCounter2(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setCounter2(java.lang.Integer) + + public static final void setDelegatedProp(@org.jetbrains.annotations.NotNull() java.lang.String);// setDelegatedProp(java.lang.String) + + public static final void setDelegatedProp2(error.NonExistentClass);// setDelegatedProp2(error.NonExistentClass) + + public static final void setEmptyInt(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setEmptyInt(java.lang.Integer) + + public static final void setEmptyMutable(@org.jetbrains.annotations.Nullable() java.lang.Boolean);// setEmptyMutable(java.lang.Boolean) + + public static final void setGetInt(@org.jetbrains.annotations.Nullable() java.lang.Integer);// setGetInt(java.lang.Integer) + + public static final void setInt2(int);// setInt2(int) + + public static final void setIslowercase(@org.jetbrains.annotations.Nullable() java.lang.Boolean);// setIslowercase(java.lang.Boolean) + + public static final void setLazyProp(@org.jetbrains.annotations.NotNull() java.lang.String);// setLazyProp(java.lang.String) + + public static final void setName(@org.jetbrains.annotations.NotNull() java.lang.String);// setName(java.lang.String) + + public static final void setStringRepresentation(@org.jetbrains.annotations.NotNull() java.lang.String);// setStringRepresentation(java.lang.String) + + public static final void setSubject(error.NonExistentClass);// setSubject(error.NonExistentClass) + + public static final void setValue(error.NonExistentClass, @org.jetbrains.annotations.NotNull() kotlin.reflect.KProperty, int);// setValue(error.NonExistentClass, kotlin.reflect.KProperty, int) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/properties.kt b/compiler/testData/asJava/ultraLightFacades/properties.kt index 3702c98e299..c1529090931 100644 --- a/compiler/testData/asJava/ultraLightFacades/properties.kt +++ b/compiler/testData/asJava/ultraLightFacades/properties.kt @@ -75,3 +75,4 @@ val x: String = "" get; var x: String = "" private set; +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightFacades/simpleFunctions.fir.java b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.fir.java new file mode 100644 index 00000000000..5f145ac8f58 --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.fir.java @@ -0,0 +1,19 @@ +public final class SimpleFunctionsKt /* SimpleFunctionsKt*/ { + @org.jetbrains.annotations.NotNull() + public static final native java.lang.String externalFun(int);// externalFun(int) + + private static final /* vararg */ java.lang.String bar3(error.NonExistentClass, @org.jetbrains.annotations.NotNull() error.NonExistentClass...);// bar3(error.NonExistentClass, error.NonExistentClass[]) + + public static final /* vararg */ void nullableVararg(@org.jetbrains.annotations.NotNull() java.lang.Object...);// nullableVararg(java.lang.Object[]) + + public static final error.NonExistentClass onString(java.lang.String, @org.jetbrains.annotations.NotNull() kotlin.jvm.functions.Function1);// onString(java.lang.String, kotlin.jvm.functions.Function1) + + public static final error.NonExistentClass plus(int);// plus(int) + + public static final int bar4();// bar4() + + public static final void bar2(error.NonExistentClass, error.NonExistentClass);// bar2(error.NonExistentClass, error.NonExistentClass) + + public static void bar(int, @org.jetbrains.annotations.NotNull() java.lang.Object, error.NonExistentClass);// bar(int, java.lang.Object, error.NonExistentClass) + +} diff --git a/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt index b4e7885b726..0cdd0547cee 100644 --- a/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt +++ b/compiler/testData/asJava/ultraLightFacades/simpleFunctions.kt @@ -8,4 +8,5 @@ public fun nullableVararg(vararg o: Any?): Unit operator fun plus(increment: Int): Foo {} fun String.onString(a: (Int) -> Any?): Foo {} -external fun externalFun(a: Int): String { return "" } \ No newline at end of file +external fun externalFun(a: Int): String { return "" } +// COMPILATION_ERRORS \ No newline at end of file diff --git a/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.fir.java b/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.fir.java new file mode 100644 index 00000000000..b4bb0cce29b --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.fir.java @@ -0,0 +1,9 @@ +public final class ThrowsAnnotationKt /* ThrowsAnnotationKt*/ { + @() + @org.jetbrains.annotations.NotNull() + public static final java.lang.String readFile(@org.jetbrains.annotations.NotNull() java.lang.String);// readFile(java.lang.String) + + @() + public static final void baz();// baz() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.lib.java b/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.lib.java new file mode 100644 index 00000000000..33f99af7c5e --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/throwsAnnotation.lib.java @@ -0,0 +1,7 @@ +public final class ThrowsAnnotationKt /* ThrowsAnnotationKt*/ { + @org.jetbrains.annotations.NotNull() + public static final java.lang.String readFile(@org.jetbrains.annotations.NotNull() java.lang.String) throws java.io.IOException, MyException;// readFile(java.lang.String) + + public static final void baz() throws java.lang.Throwable;// baz() + +} diff --git a/compiler/testData/asJava/ultraLightFacades/wildcardOptimization.fir.java b/compiler/testData/asJava/ultraLightFacades/wildcardOptimization.fir.java new file mode 100644 index 00000000000..ad2dea7c20b --- /dev/null +++ b/compiler/testData/asJava/ultraLightFacades/wildcardOptimization.fir.java @@ -0,0 +1,77 @@ +public final class WildcardOptimizationKt /* WildcardOptimizationKt*/ { + @org.jetbrains.annotations.NotNull() + public static final In notDeepIn();// notDeepIn() + + @org.jetbrains.annotations.NotNull() + public static final Inv> skipWildcardsUntilInProjection();// skipWildcardsUntilInProjection() + + @org.jetbrains.annotations.NotNull() + public static final Inv>> skipAllInvWildcards();// skipAllInvWildcards() + + @org.jetbrains.annotations.NotNull() + public static final Inv>>> skipAllOutInvWildcards();// skipAllOutInvWildcards() + + @org.jetbrains.annotations.NotNull() + public static final Out>> skipWildcardsUntilIn1();// skipWildcardsUntilIn1() + + @org.jetbrains.annotations.NotNull() + public static final Out>> skipWildcardsUntilIn0();// skipWildcardsUntilIn0() + + @org.jetbrains.annotations.NotNull() + public static final Out>>> skipWildcardsUntilIn2();// skipWildcardsUntilIn2() + + public static final void typeParameter(@org.jetbrains.annotations.NotNull() Out, @org.jetbrains.annotations.NotNull() In);// typeParameter(Out, In) + + public static final void arrayOfOutFinal(@org.jetbrains.annotations.NotNull() Out[]);// arrayOfOutFinal(Out[]) + + public static final void arrayOfOutOpen(@org.jetbrains.annotations.NotNull() Out[]);// arrayOfOutOpen(Out[]) + + public static final void deepFinal(@org.jetbrains.annotations.NotNull() Out>>);// deepFinal(Out>>) + + public static final void deepOpen(@org.jetbrains.annotations.NotNull() Out>>);// deepOpen(Out>>) + + public static final void finalClassArgument(@org.jetbrains.annotations.NotNull() Out, @org.jetbrains.annotations.NotNull() In);// finalClassArgument(Out, In) + + public static final void inAny(@org.jetbrains.annotations.NotNull() In);// inAny(In) + + public static final void inFinal(@org.jetbrains.annotations.NotNull() In);// inFinal(In) + + public static final void inOutFinal(@org.jetbrains.annotations.NotNull() In>);// inOutFinal(In>) + + public static final void invFinal(@org.jetbrains.annotations.NotNull() Inv);// invFinal(Inv) + + public static final void invIn(@org.jetbrains.annotations.NotNull() Out>);// invIn(Out>) + + public static final void invInAny(@org.jetbrains.annotations.NotNull() Out>);// invInAny(Out>) + + public static final void invInOutFinal(@org.jetbrains.annotations.NotNull() Inv>>);// invInOutFinal(Inv>>) + + public static final void invInOutOpen(@org.jetbrains.annotations.NotNull() Inv>>);// invInOutOpen(Inv>>) + + public static final void invInv(@org.jetbrains.annotations.NotNull() Out>);// invInv(Out>) + + public static final void invOpen(@org.jetbrains.annotations.NotNull() Inv);// invOpen(Inv) + + public static final void invOut(@org.jetbrains.annotations.NotNull() Out>);// invOut(Out>) + + public static final void invOutFinal(@org.jetbrains.annotations.NotNull() Inv>);// invOutFinal(Inv>) + + public static final void invOutFinal(@org.jetbrains.annotations.NotNull() Out>);// invOutFinal(Out>) + + public static final void invOutOpen(@org.jetbrains.annotations.NotNull() Inv>);// invOutOpen(Inv>) + + public static final void invOutProjectedOutFinal(@org.jetbrains.annotations.NotNull() Inv>);// invOutProjectedOutFinal(Inv>) + + public static final void oneArgumentFinal(@org.jetbrains.annotations.NotNull() OutPair);// oneArgumentFinal(OutPair) + + public static final void openClassArgument(@org.jetbrains.annotations.NotNull() Out, @org.jetbrains.annotations.NotNull() In);// openClassArgument(Out, In) + + public static final void outIn(@org.jetbrains.annotations.NotNull() Out>);// outIn(Out>) + + public static final void outInAny(@org.jetbrains.annotations.NotNull() Out>);// outInAny(Out>) + + public static final void outOfArrayOpen(@org.jetbrains.annotations.NotNull() Out);// outOfArrayOpen(Out) + + public static final void outOfArrayOutOpen(@org.jetbrains.annotations.NotNull() Out);// outOfArrayOutOpen(Out) + +}