Revert "Kapt: Always use raw types for annotation parameter types (KT-30346)"

This reverts commit 66754e62
This commit is contained in:
Yan Zhulanow
2019-04-22 16:15:43 +03:00
parent 9a5bbcb00b
commit a0778ad703
10 changed files with 11 additions and 74 deletions
@@ -833,15 +833,7 @@ class ClassFileToSourceStubConverter(val kaptContext: KaptContextForStubGenerati
else -> null
}
},
ifNonError = ifNonError@ {
if (descriptor is PropertyDescriptor) {
val containingClass = descriptor.containingDeclaration
if (containingClass is ClassDescriptor && containingClass.kind == ClassKind.ANNOTATION_CLASS) {
return@ifNonError jcReturnType
}
}
genericSignature.returnType
}
ifNonError = { genericSignature.returnType }
)
return Pair(genericSignature, returnType)
@@ -359,11 +359,6 @@ public class ClassFileToSourceStubConverterTestGenerated extends AbstractClassFi
runTest("plugins/kapt3/kapt3-compiler/testData/converter/nonExistentClassWIthoutCorrection.kt");
}
@TestMetadata("outProjection.kt")
public void testOutProjection() throws Exception {
runTest("plugins/kapt3/kapt3-compiler/testData/converter/outProjection.kt");
}
@TestMetadata("primitiveTypes.kt")
public void testPrimitiveTypes() throws Exception {
runTest("plugins/kapt3/kapt3-compiler/testData/converter/primitiveTypes.kt");
@@ -28,9 +28,9 @@ public abstract @interface Anno2 {
public abstract Colors[] colors() default {Colors.BLACK, Colors.WHITE};
public abstract java.lang.Class clazz();
public abstract java.lang.Class<?> clazz();
public abstract java.lang.Class[] classes();
public abstract java.lang.Class<?>[] classes();
}
////////////////////
@@ -4,7 +4,7 @@ import kotlin.reflect.KClass;
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
public abstract @interface Anno {
public abstract java.lang.Class a();
public abstract java.lang.Class<java.lang.Object> a();
}
////////////////////
@@ -159,7 +159,7 @@ public abstract interface IFoo {
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
public static abstract @interface Anno {
public abstract java.lang.Class[] value();
public abstract java.lang.Class<?>[] value();
}
@kotlin.Metadata()
@@ -164,7 +164,7 @@ public abstract interface IFoo {
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
public static abstract @interface Anno {
public abstract java.lang.Class[] value();
public abstract java.lang.Class<?>[] value();
}
@kotlin.Metadata()
@@ -5,13 +5,13 @@ import kotlin.reflect.KClass;
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
public abstract @interface Anno {
public abstract java.lang.Class a();
public abstract java.lang.Class<?> a();
public abstract java.lang.Class[] b();
public abstract java.lang.Class<?>[] b();
public abstract java.lang.Class[] c();
public abstract java.lang.Class<?>[] c();
public abstract java.lang.Class[] d();
public abstract java.lang.Class<?>[] d();
}
////////////////////
@@ -1,10 +0,0 @@
import kotlin.reflect.KClass;
annotation class Anno(val baseClass: KClass<out Intf<*, *, *>>)
interface Intf<S, R, A>
abstract class Base<S, R, A> : Intf<S, R, A>
@Anno(baseClass = Base::class)
interface Impl
@@ -1,40 +0,0 @@
import java.lang.System;
@kotlin.Metadata()
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
public abstract @interface Anno {
public abstract java.lang.Class baseClass();
}
////////////////////
import java.lang.System;
@kotlin.Metadata()
public abstract class Base<S extends java.lang.Object, R extends java.lang.Object, A extends java.lang.Object> implements Intf<S, R, A> {
public Base() {
super();
}
}
////////////////////
import java.lang.System;
@kotlin.Metadata()
@Anno(baseClass = Base.class)
public abstract interface Impl {
}
////////////////////
import java.lang.System;
@kotlin.Metadata()
public abstract interface Intf<S extends java.lang.Object, R extends java.lang.Object, A extends java.lang.Object> {
}
@@ -48,7 +48,7 @@ public abstract @interface AnnoClass {
public abstract int x();
public abstract java.lang.Class c();
public abstract java.lang.Class<Color> c();
}
////////////////////