From 59123b0efba484e81625d403ca36768e149bd451 Mon Sep 17 00:00:00 2001 From: aclement Date: Fri, 18 Aug 2006 08:21:58 +0000 Subject: [PATCH] test and fix for 154332: broken java.lang. processing --- tests/bugs153/pr154332/Annot.java | 45 +++++++++++++++++++ .../systemtest/ajc153/Ajc153Tests.java | 1 + .../org/aspectj/systemtest/ajc153/ajc153.xml | 9 ++++ .../aspectj/weaver/bcel/BcelObjectType.java | 2 +- 4 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 tests/bugs153/pr154332/Annot.java diff --git a/tests/bugs153/pr154332/Annot.java b/tests/bugs153/pr154332/Annot.java new file mode 100644 index 000000000..183c82859 --- /dev/null +++ b/tests/bugs153/pr154332/Annot.java @@ -0,0 +1,45 @@ +import java.lang.annotation.*; + +@Deprecated @Marker + +public aspect Annot { + + + + pointcut test() : within(@Marker *);// *); + + + + declare warning: staticinitialization(@Deprecated *): "deprecated"; + + declare warning: staticinitialization(@Marker *): "marker"; + + + + public static void main(String argz[]) { + + new Baz().foo(); + + } + +} + + + +@Deprecated @Marker + +class Baz { + + public void foo() {} + +} + + + +@Retention(RetentionPolicy.RUNTIME) + + @interface Marker { + + + +} \ No newline at end of file diff --git a/tests/src/org/aspectj/systemtest/ajc153/Ajc153Tests.java b/tests/src/org/aspectj/systemtest/ajc153/Ajc153Tests.java index afae345b9..e2d6256f2 100644 --- a/tests/src/org/aspectj/systemtest/ajc153/Ajc153Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc153/Ajc153Tests.java @@ -27,6 +27,7 @@ public class Ajc153Tests extends org.aspectj.testing.XMLBasedAjcTestCase { // public void testArgnamesAndJavac_pr148381() { runTest("argNames and javac");} // public void testCFlowXMLAspectLTW_pr149096() { runTest("cflow xml concrete aspect"); } // public void testAmbiguousBinding_pr121805() { runTest("ambiguous binding");} + public void testIncorrectDeprecatedAnnotationProcessing_pr154332() { runTest("incorrect deprecated annotation processing");} public void testPipeliningProblemWithAnnotationsDecp_pr153380_1() { runTest("pipelining decps");} public void testUnwantedPointcutWarning_pr148219() { runTest("unwanted warning for pointcut");} public void testDecpAndCflowadderMungerClash_pr152631() { runTest("decp and cflowadder munger clash");} diff --git a/tests/src/org/aspectj/systemtest/ajc153/ajc153.xml b/tests/src/org/aspectj/systemtest/ajc153/ajc153.xml index e7c382284..1951d4b3e 100644 --- a/tests/src/org/aspectj/systemtest/ajc153/ajc153.xml +++ b/tests/src/org/aspectj/systemtest/ajc153/ajc153.xml @@ -23,6 +23,15 @@ + + + + + + + + + diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelObjectType.java b/weaver/src/org/aspectj/weaver/bcel/BcelObjectType.java index 36b71ec30..6eefa5685 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelObjectType.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelObjectType.java @@ -641,7 +641,7 @@ public class BcelObjectType extends AbstractReferenceTypeDelegate { annotations = new AnnotationX[annos.length]; for (int i = 0; i < annos.length; i++) { Annotation annotation = annos[i]; - annotationTypes[i] = w.resolve(UnresolvedType.forName(annotation.getTypeName())); + annotationTypes[i] = w.resolve(UnresolvedType.forSignature(annotation.getTypeSignature())); annotations[i] = new AnnotationX(annotation,w); } } -- 2.39.5