From 8ab740316c2afbe54fbdd081b0e4ad2790c3ef60 Mon Sep 17 00:00:00 2001 From: aclement Date: Tue, 23 Jan 2007 10:45:30 +0000 Subject: [PATCH] 170467: methods with parameterized parameters not working in ITD overrides relationship. tests and fix. --- tests/bugs160/pr170467/Bug.aj | 16 ++++++++++++++++ tests/bugs160/pr170467/Bug2.aj | 16 ++++++++++++++++ .../aspectj/systemtest/ajc160/Ajc160Tests.java | 1 + .../src/org/aspectj/systemtest/ajc160/ajc160.xml | 7 +++++++ 4 files changed, 40 insertions(+) create mode 100644 tests/bugs160/pr170467/Bug.aj create mode 100644 tests/bugs160/pr170467/Bug2.aj diff --git a/tests/bugs160/pr170467/Bug.aj b/tests/bugs160/pr170467/Bug.aj new file mode 100644 index 000000000..4c68eda07 --- /dev/null +++ b/tests/bugs160/pr170467/Bug.aj @@ -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 somethings); +} + +class ExtendedBaseClass extends BaseClass { + @Override + public void setSomething(Set somethings) { } +} + + diff --git a/tests/bugs160/pr170467/Bug2.aj b/tests/bugs160/pr170467/Bug2.aj new file mode 100644 index 000000000..89b5121c4 --- /dev/null +++ b/tests/bugs160/pr170467/Bug2.aj @@ -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) { } +} + + diff --git a/tests/src/org/aspectj/systemtest/ajc160/Ajc160Tests.java b/tests/src/org/aspectj/systemtest/ajc160/Ajc160Tests.java index a452fe4c4..c0b562ac2 100644 --- a/tests/src/org/aspectj/systemtest/ajc160/Ajc160Tests.java +++ b/tests/src/org/aspectj/systemtest/ajc160/Ajc160Tests.java @@ -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");} diff --git a/tests/src/org/aspectj/systemtest/ajc160/ajc160.xml b/tests/src/org/aspectj/systemtest/ajc160/ajc160.xml index 23816e58e..b2793eb8c 100644 --- a/tests/src/org/aspectj/systemtest/ajc160/ajc160.xml +++ b/tests/src/org/aspectj/systemtest/ajc160/ajc160.xml @@ -4,6 +4,13 @@ + + + + + + + -- 2.39.5