aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/bugs161/pr223226/AspectX.java4
-rw-r--r--tests/bugs161/pr223226/AspectXMarker.java3
-rw-r--r--tests/bugs161/pr223226/BInterface.java2
-rw-r--r--tests/bugs161/pr223226/Foo.java3
-rw-r--r--tests/bugs161/pr223226/FooInterface.java5
-rw-r--r--tests/bugs161/pr223226/Test.java9
-rw-r--r--tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java2
-rw-r--r--tests/src/org/aspectj/systemtest/ajc161/ajc161.xml14
8 files changed, 42 insertions, 0 deletions
diff --git a/tests/bugs161/pr223226/AspectX.java b/tests/bugs161/pr223226/AspectX.java
new file mode 100644
index 000000000..76fa159d9
--- /dev/null
+++ b/tests/bugs161/pr223226/AspectX.java
@@ -0,0 +1,4 @@
+public aspect AspectX
+{
+ public A AspectXMarker<A,B>.doSomething(B b) { return null; }
+}
diff --git a/tests/bugs161/pr223226/AspectXMarker.java b/tests/bugs161/pr223226/AspectXMarker.java
new file mode 100644
index 000000000..f880df472
--- /dev/null
+++ b/tests/bugs161/pr223226/AspectXMarker.java
@@ -0,0 +1,3 @@
+public interface AspectXMarker <A, B extends BInterface<?> > extends
+FooInterface<A, B>
+{ }
diff --git a/tests/bugs161/pr223226/BInterface.java b/tests/bugs161/pr223226/BInterface.java
new file mode 100644
index 000000000..790d4967c
--- /dev/null
+++ b/tests/bugs161/pr223226/BInterface.java
@@ -0,0 +1,2 @@
+public interface BInterface<S> { }
+
diff --git a/tests/bugs161/pr223226/Foo.java b/tests/bugs161/pr223226/Foo.java
new file mode 100644
index 000000000..4aaa0fb1a
--- /dev/null
+++ b/tests/bugs161/pr223226/Foo.java
@@ -0,0 +1,3 @@
+public class Foo<B extends BInterface<?>> implements AspectXMarker<Integer, B>
+{}
+
diff --git a/tests/bugs161/pr223226/FooInterface.java b/tests/bugs161/pr223226/FooInterface.java
new file mode 100644
index 000000000..e4884ba47
--- /dev/null
+++ b/tests/bugs161/pr223226/FooInterface.java
@@ -0,0 +1,5 @@
+public interface FooInterface<A,B>
+{
+ public A doSomething(B transition);
+}
+
diff --git a/tests/bugs161/pr223226/Test.java b/tests/bugs161/pr223226/Test.java
new file mode 100644
index 000000000..354916dcb
--- /dev/null
+++ b/tests/bugs161/pr223226/Test.java
@@ -0,0 +1,9 @@
+public class Test
+{
+ public static void main(String[] args)
+ {
+ Foo<BInterface<Integer>> foo = new Foo<BInterface<Integer>>();
+
+ foo.doSomething(null);
+ }
+}
diff --git a/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java b/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java
index 04551984b..94c28eaab 100644
--- a/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java
+++ b/tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java
@@ -23,6 +23,8 @@ import org.aspectj.testing.XMLBasedAjcTestCase;
public class Ajc161Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
// AspectJ1.6.1
+ public void testDuplicateMethodSignature_pr223226_2() { runTest("duplicate method signature - 2"); }
+ public void testDuplicateMethodSignature_pr223226() { runTest("duplicate method signature"); }
public void testProtectedMethodsAroundAdvice_pr197719_2() { runTest("protected methods and around advice - again - 2");}
public void testProtectedMethodsAroundAdvice_pr197719() { runTest("protected methods and around advice - again");}
public void testProtectedMethodsAroundAdvice_pr230075() { runTest("protected methods and around advice");}
diff --git a/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml b/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml
index 59838531e..5ecf57370 100644
--- a/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml
+++ b/tests/src/org/aspectj/systemtest/ajc161/ajc161.xml
@@ -3,6 +3,20 @@
<!-- AspectJ v1.6.1 Tests -->
<suite>
+ <ajc-test dir="bugs161/pr223226" title="duplicate method signature - 2">
+ <compile files="AspectX.java BInterface.java FooInterface.java AspectXMarker.java Foo.java Test.java" options="-1.5"/>
+ <run class="Test"/>
+ </ajc-test>
+
+ <ajc-test dir="bugs161/pr223226" title="duplicate method signature">
+ <compile files="AspectX.java BInterface.java FooInterface.java AspectXMarker.java Foo.java Test.java" options="">
+ <message kind="error" line="1"/>
+ <message kind="error" line="2"/>
+ <message kind="error" line="3"/>
+ <message kind="error" line="5"/>
+ </compile>
+ </ajc-test>
+
<ajc-test dir="bugs161/pr197719" title="protected methods and around advice - again - 2">
<compile files="test/aspects/C1.java test/aspects/C3.java test/aspects/MyAnn.java test/aspects/MyAnnAspect.java test/aspects2/C2.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point 'method-call(void test.aspects.C1.aMethod())' in Type 'test.aspects.C1' (C1.java:12) "/>