mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-18 08:31:38 +00:00
Add FIR enhancement tests, fix some exceptions / problems around them
Test data and tests themselves are based on compiler/testData/loadJava/compiledJava
This commit is contained in:
4
compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/AllBoundsInWhen.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class AllBoundsInWhen : R|java/lang/Object| {
|
||||
public open operator function foo(): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/ArrayType.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class ArrayType : R|java/lang/Object| {
|
||||
public open operator function foo(): R|kotlin/Array<ft<java/lang/String, java/lang/String?>>|
|
||||
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithNewTypeParams.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
<T> public open class ConstructorWithNewTypeParams : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
<T> public open class ConstructorWithParentTypeParams : R|java/lang/Object| {
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithSeveralParams.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
public open class ConstructorWithSeveralParams : R|java/lang/Object| {
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithoutParams.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/ConstructorWithoutParams.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
public open class ConstructorWithoutParams : R|java/lang/Object| {
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/CustomProjectionKind.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class CustomProjectionKind : R|java/lang/Object| {
|
||||
public open operator function foo(): R|ft<java/util/List<ft<java/lang/Number, java/lang/Number?>>, java/util/List<ft<java/lang/Number, java/lang/Number?>>>|
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithFunctionTypes.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class MethodWithFunctionTypes : R|java/lang/Object| {
|
||||
public open operator function foo(f: R|ft<kotlin/jvm/functions/Function1<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, kotlin/jvm/functions/Function1<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>|): R|ft<kotlin/jvm/functions/Function0<ft<java/lang/String, java/lang/String?>>, kotlin/jvm/functions/Function0<ft<java/lang/String, java/lang/String?>>>|
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithGenerics.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class MethodWithGenerics : R|java/lang/Object| {
|
||||
public open operator function foo(a: R|ft<java/lang/String, java/lang/String?>|!, b: R|ft<java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>, java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>>|): R|ft<java/lang/String, java/lang/String?>|!
|
||||
|
||||
}
|
||||
6
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt
vendored
Normal file
6
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithMappedClasses.fir.txt
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
public open class MethodWithMappedClasses : R|java/lang/Object| {
|
||||
public open operator function copy(dest: R|ft<java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super T>, java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super T>?>|!, src: R|ft<java/util/List<ft<T, T?>>, java/util/List<ft<T, T?>>>|): R|kotlin/Unit|
|
||||
|
||||
public open operator function copyMap(dest: R|ft<java/util/Map<ft<java/lang/String, java/lang/String?>, *>, java/util/Map<ft<java/lang/String, java/lang/String?>, *>>|, src: R|ft<java/util/Map<ft<java/lang/String, java/lang/String?>, ft<T, T?>>, java/util/Map<ft<java/lang/String, java/lang/String?>, ft<T, T?>>>|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithTypeParameters.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class MethodWithTypeParameters : R|java/lang/Object| {
|
||||
public open operator function foo(a: R|ft<A, A?>|!, b: R|ft<java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? extends B>, java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? extends B>?>|!, list: R|ft<java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super String>, java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? super String>?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/MethodWithVararg.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class MethodWithVararg : R|java/lang/Object| {
|
||||
public open operator function foo(vararg s: R|kotlin/Array<ft<java/lang/String, java/lang/String?>>|): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyArrayTypes.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
<T> public open class PropertyArrayTypes : R|java/lang/Object| {
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertyComplexTypes.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
<T> public open class PropertyComplexTypes : R|java/lang/Object| {
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/PropertySimpleType.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
public open class PropertySimpleType : R|java/lang/Object| {
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/StarProjection.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public final class StarProjection : R|java/lang/Object| {
|
||||
public final operator function foo(): R|ft<test/StarProjection.MyClass<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:?>, test/StarProjection.MyClass<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:?>?>|!
|
||||
|
||||
}
|
||||
4
compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt
vendored
Normal file
4
compiler/testData/loadJava/compiledJava/kotlinSignature/error/WrongProjectionKind.fir.txt
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
public open class WrongProjectionKind : R|java/lang/Object| {
|
||||
public open operator function copy(from: R|kotlin/Array<ft<java/lang/Number, java/lang/Number?>>|, to: R|kotlin/Array<ft<java/lang/Number, java/lang/Number?>>|): R|ft<java/util/List<ft<java/lang/Number, java/lang/Number?>>, java/util/List<ft<java/lang/Number, java/lang/Number?>>>|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public open class WrongReturnTypeStructure : R|java/lang/Object| {
|
||||
public open operator function foo(a: R|ft<java/lang/String, java/lang/String?>|!, b: R|ft<java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>, java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>>|): R|ft<java/lang/String, java/lang/String?>|!
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public open class WrongTypeParameterBoundStructure1 : R|java/lang/Object| {
|
||||
public open operator function foo(a: R|ft<A, A?>|!, b: R|ft<java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? extends B>, java/util/List<class error: Unexpected type argument: JavaWildcardTypeImpl: PsiType:? extends B>?>|!): R|kotlin/Unit|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
public open class WrongValueParameterStructure1 : R|java/lang/Object| {
|
||||
public open operator function foo(a: R|ft<java/lang/String, java/lang/String?>|!, b: R|ft<java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>, java/util/List<ft<java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>, java/util/Map.Entry<ft<java/lang/String, java/lang/String?>, ft<java/lang/String, java/lang/String?>>>>>|): R|ft<java/lang/String, java/lang/String?>|!
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface PropagateTypeArgumentNullable : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface ChangeProjectionKind1 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface DeeplySubstitutedClassParameter : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface DeeplySubstitutedClassParameter2 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNotVararg : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNotVarargInteger : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNotVarargNotNull : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNotVarargPrimitive : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullability : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritVararg : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritVarargInteger : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritVarargNotNull : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritVarargPrimitive : R|java/lang/Object| {
|
||||
}
|
||||
2
compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/parameter/Kt3302.fir.txt
vendored
Normal file
2
compiler/testData/loadJava/compiledJava/kotlinSignature/propagation/parameter/Kt3302.fir.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
public abstract interface Kt3302 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface MutableToReadOnly : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface NotNullToNullable : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface NullableToNotNull : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface NullableToNotNullKotlinSignature : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface OverrideWithErasedParameter : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface ReadOnlyToMutable : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubclassFromGenericAndNot : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedClassParameter : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedClassParameters : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNotNullJavaSubtype : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNotNullSameJavaType : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNullabilityJavaSubtype : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNullabilitySameGenericType1 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNullabilitySameGenericType2 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface AddNullabilitySameJavaType : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface CantMakeImmutableInSubclass : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface DeeplySubstitutedClassParameter : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface DeeplySubstitutedClassParameter2 : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface HalfSubstitutedTypeParameters : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullabilityGenericSubclassSimple : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullabilityJavaSubtype : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullabilitySameGenericType : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullabilitySameJavaType : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritProjectionKind : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritReadOnlinessOfArgument : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritReadOnlinessSameClass : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritReadOnlinessSubclass : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SameProjectionKind : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubclassFromGenericAndNot : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
<E> public abstract interface SubclassOfCollection : R|java/util/Collection<E>| {
|
||||
public abstract operator function iterator(): R|ft<java/util/Iterator<ft<E, E?>>, java/util/Iterator<ft<E, E?>>>|
|
||||
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
<K, V> public abstract interface SubclassOfMapEntry : R|java/util/Map.Entry<K, V>| {
|
||||
public abstract operator function setValue(value: R|ft<V, V?>|!): R|ft<V, V?>|!
|
||||
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedClassParameter : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface SubstitutedClassParameters : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesConflictingProjectionKinds : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesInvariantAndCovariantInferMutability : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesInvariantAndCovariantInferNullability : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesMutableAndNot : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesReturnJavaSubtype : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesReturnSameJavaType : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclassesSupplementNotNull : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TypeParamOfClass : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TypeParamOfClassSubstituted : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TypeParamOfFun : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface InheritNullability : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoBounds : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoSuperclasses : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface TwoTypeParameters : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface UseParameterAsUpperBound : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface UseParameterInUpperBound : R|java/lang/Object| {
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
public abstract interface UseParameterInUpperBoundWithKotlinSignature : R|java/lang/Object| {
|
||||
}
|
||||
Reference in New Issue
Block a user