KAPT: Preserve the order of annotations in the stubs
Previously the annotations were included in reverse order. With this change they are kept in the same order as in the source file. This changes the test case for KT-23427 but that issue seems to relate to annotation arguments that are missing, not the order of repeatable annotations. This fixes KT-51087
This commit is contained in:
committed by
Alexander Udalov
parent
6f5ffeb6bb
commit
dd051c1556
+24
-24
@@ -1,7 +1,7 @@
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoArray {
|
||||
|
||||
public abstract int x();
|
||||
@@ -14,8 +14,8 @@ public abstract @interface AnnoArray {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoBoolean {
|
||||
|
||||
public abstract int x();
|
||||
@@ -28,8 +28,8 @@ public abstract @interface AnnoBoolean {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoChar {
|
||||
|
||||
public abstract int x();
|
||||
@@ -42,8 +42,8 @@ public abstract @interface AnnoChar {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoClass {
|
||||
|
||||
public abstract int x();
|
||||
@@ -56,8 +56,8 @@ public abstract @interface AnnoClass {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoDouble {
|
||||
|
||||
public abstract int x();
|
||||
@@ -70,8 +70,8 @@ public abstract @interface AnnoDouble {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoEnum {
|
||||
|
||||
public abstract int x();
|
||||
@@ -84,8 +84,8 @@ public abstract @interface AnnoEnum {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoFloat {
|
||||
|
||||
public abstract int x();
|
||||
@@ -98,8 +98,8 @@ public abstract @interface AnnoFloat {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoInt {
|
||||
|
||||
public abstract int x();
|
||||
@@ -112,8 +112,8 @@ public abstract @interface AnnoInt {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoIntArray {
|
||||
|
||||
public abstract int x();
|
||||
@@ -126,8 +126,8 @@ public abstract @interface AnnoIntArray {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoLong {
|
||||
|
||||
public abstract int x();
|
||||
@@ -140,8 +140,8 @@ public abstract @interface AnnoLong {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoLongArray {
|
||||
|
||||
public abstract int x();
|
||||
@@ -154,8 +154,8 @@ public abstract @interface AnnoLongArray {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
|
||||
@kotlin.Metadata()
|
||||
public abstract @interface AnnoString {
|
||||
|
||||
public abstract int x();
|
||||
@@ -195,9 +195,9 @@ public final class Test {
|
||||
return null;
|
||||
}
|
||||
|
||||
@lib.Anno(value = "3", construct = {"C"})
|
||||
@lib.Anno(value = "2", construct = {"A", "B"})
|
||||
@lib.Anno(value = "1")
|
||||
@lib.Anno(value = "2", construct = {"A", "B"})
|
||||
@lib.Anno(value = "3", construct = {"C"})
|
||||
@java.lang.Deprecated()
|
||||
public static void getValue$annotations() {
|
||||
}
|
||||
@@ -208,17 +208,17 @@ public final class Test {
|
||||
|
||||
import java.lang.System;
|
||||
|
||||
@kotlin.Metadata()
|
||||
@AnnoClass(x = lib.R.id.textView, c = Color.class)
|
||||
@AnnoArray(x = lib.R.id.textView, a = {"A", "B"})
|
||||
@AnnoLongArray(x = lib.R.id.textView, b = {1L, 3L})
|
||||
@AnnoIntArray(x = lib.R.id.textView, b = {1, 2, 3})
|
||||
@AnnoString(x = lib.R.id.textView, s = "AAA")
|
||||
@AnnoDouble(x = lib.R.id.textView, dbl = 4.0)
|
||||
@AnnoFloat(x = lib.R.id.textView, flt = 1.0F)
|
||||
@AnnoInt(x = lib.R.id.textView, i = 5)
|
||||
@AnnoBoolean(x = lib.R.id.textView, bool = false)
|
||||
@AnnoChar(x = lib.R.id.textView, chr = 'c')
|
||||
@AnnoBoolean(x = lib.R.id.textView, bool = false)
|
||||
@AnnoInt(x = lib.R.id.textView, i = 5)
|
||||
@AnnoFloat(x = lib.R.id.textView, flt = 1.0F)
|
||||
@AnnoDouble(x = lib.R.id.textView, dbl = 4.0)
|
||||
@AnnoString(x = lib.R.id.textView, s = "AAA")
|
||||
@AnnoIntArray(x = lib.R.id.textView, b = {1, 2, 3})
|
||||
@AnnoLongArray(x = lib.R.id.textView, b = {1L, 3L})
|
||||
@AnnoArray(x = lib.R.id.textView, a = {"A", "B"})
|
||||
@AnnoClass(x = lib.R.id.textView, c = Color.class)
|
||||
@kotlin.Metadata()
|
||||
public final class Test2 {
|
||||
|
||||
public Test2() {
|
||||
|
||||
Reference in New Issue
Block a user