diff --git a/independent-projects/arc/processor/src/main/java/io/quarkus/arc/processor/AsmUtilCopy.java b/independent-projects/arc/processor/src/main/java/io/quarkus/arc/processor/AsmUtilCopy.java index 8369d11e9c2d1..4602c12ea37b9 100644 --- a/independent-projects/arc/processor/src/main/java/io/quarkus/arc/processor/AsmUtilCopy.java +++ b/independent-projects/arc/processor/src/main/java/io/quarkus/arc/processor/AsmUtilCopy.java @@ -258,6 +258,9 @@ public static boolean needsSignature(MethodInfo method) { * Returns true if the given type contains parameterized types, type variables or wildcards */ private static boolean needsSignature(Type type) { + if (type == null) { + return false; + } switch (type.kind()) { case ARRAY: case CLASS: diff --git a/independent-projects/arc/processor/src/test/java/io/quarkus/arc/processor/AsmUtilCopyTest.java b/independent-projects/arc/processor/src/test/java/io/quarkus/arc/processor/AsmUtilCopyTest.java new file mode 100644 index 0000000000000..e11239251d128 --- /dev/null +++ b/independent-projects/arc/processor/src/test/java/io/quarkus/arc/processor/AsmUtilCopyTest.java @@ -0,0 +1,15 @@ +package io.quarkus.arc.processor; + +import static org.junit.jupiter.api.Assertions.assertFalse; + +import java.io.IOException; +import org.junit.jupiter.api.Test; + +public class AsmUtilCopyTest { + + @Test + public void testNeedsSignature() throws IOException { + assertFalse(AsmUtilCopy.needsSignature(Basics.index(Object.class).getClassByName(DotNames.OBJECT))); + } + +}