]> source.dussan.org Git - aspectj.git/commitdiff
170467: methods with parameterized parameters not working in ITD overrides relationsh...
authoraclement <aclement>
Tue, 23 Jan 2007 10:45:30 +0000 (10:45 +0000)
committeraclement <aclement>
Tue, 23 Jan 2007 10:45:30 +0000 (10:45 +0000)
tests/bugs160/pr170467/Bug.aj [new file with mode: 0644]
tests/bugs160/pr170467/Bug2.aj [new file with mode: 0644]
tests/src/org/aspectj/systemtest/ajc160/Ajc160Tests.java
tests/src/org/aspectj/systemtest/ajc160/ajc160.xml

diff --git a/tests/bugs160/pr170467/Bug.aj b/tests/bugs160/pr170467/Bug.aj
new file mode 100644 (file)
index 0000000..4c68eda
--- /dev/null
@@ -0,0 +1,16 @@
+import java.util.*;
+
+// this should be OK, the parameterized forms of Set are the same
+
+abstract class BaseClass { }
+
+aspect BaseClassAspect {
+        public abstract void BaseClass.setSomething(Set<String> somethings);
+}
+
+class ExtendedBaseClass extends BaseClass {
+        @Override
+        public void setSomething(Set<String> somethings) { }
+}
+
+
diff --git a/tests/bugs160/pr170467/Bug2.aj b/tests/bugs160/pr170467/Bug2.aj
new file mode 100644 (file)
index 0000000..89b5121
--- /dev/null
@@ -0,0 +1,16 @@
+import java.util.*;
+
+// Trivial testcase to ensure the basics behave
+
+abstract class BaseClass { }
+
+aspect BaseClassAspect {
+        public abstract void BaseClass.setSomething(Set somethings);
+}
+
+class ExtendedBaseClass extends BaseClass {
+        @Override
+        public void setSomething(Set somethings) { }
+}
+
+
index a452fe4c45567ef7d5572c825d5b3ec0884effa5..c0b562ac2b0257add813a48f0f1eb485094a674f 100644 (file)
@@ -21,6 +21,7 @@ import junit.framework.Test;
  */
 public class Ajc160Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
        
+  public void testItdsParameterizedParameters_pr170467() { runTest("itds and parameterized parameters");}
   public void testComplexGenerics_pr168044() { runTest("complex generics - 1");}
   public void testIncorrectlyMarkingFieldTransient_pr168063() { runTest("incorrectly marking field transient");}
   public void testInheritedAnnotations_pr169706() { runTest("inherited annotations");}
index 23816e58ee51b489fcb884ea3720441417dbee2e..b2793eb8c310b91ec1a6fc05fd690aeb5329fbe5 100644 (file)
@@ -4,6 +4,13 @@
 <suite>
 
  <!-- first section - dont need a 1.6 vm but fixed in the 1.6 branch of AspectJ -->
+    <ajc-test dir="bugs160/pr170467" title="itds and parameterized parameters">
+      <compile files="Bug.aj" options="-1.5"/>
+      <compile files="Bug2.aj" options="-1.5"/>
+    </ajc-test>
+    
+    
     <ajc-test dir="bugs160/pr169706" title="inherited annotations">
       <compile files="A.java,B.java,C.java,MyAspect.java,MyAnnotation.java,Test.java" options="-1.5 -showWeaveInfo">
         <message kind="weave" text="Join point 'method-call(void C.foo())' in Type 'Test' (Test.java:5) advised by before advice from 'MyAspect' (MyAspect.java:4)"/>