diff options
author | aclement <aclement> | 2005-07-29 12:50:05 +0000 |
---|---|---|
committer | aclement <aclement> | 2005-07-29 12:50:05 +0000 |
commit | 506b37517e2681c790cad02367107c43084f342c (patch) | |
tree | 4960f8671425b56584f8dc07a6f205c7c21c49e6 /tests/java5/generics | |
parent | d8c084d286dd115764da0c63a824b8c36f71c28b (diff) | |
download | aspectj-506b37517e2681c790cad02367107c43084f342c.tar.gz aspectj-506b37517e2681c790cad02367107c43084f342c.zip |
genericitds: using wildcard '? extends Type'
Diffstat (limited to 'tests/java5/generics')
-rw-r--r-- | tests/java5/generics/itds/ParameterizedMethodITD1.aj | 21 | ||||
-rw-r--r-- | tests/java5/generics/itds/ParameterizedMethodITD2.aj | 20 |
2 files changed, 41 insertions, 0 deletions
diff --git a/tests/java5/generics/itds/ParameterizedMethodITD1.aj b/tests/java5/generics/itds/ParameterizedMethodITD1.aj new file mode 100644 index 000000000..391a91df6 --- /dev/null +++ b/tests/java5/generics/itds/ParameterizedMethodITD1.aj @@ -0,0 +1,21 @@ +// Calling an ITD'd method where the parameterization is '? extends Super' +import java.util.*; + +class Base { } + +public class ParameterizedMethodITD1 { + + public static void main(String[] argv) { + List<A> as = new ArrayList<A>(); + new Base().simple(as); + } +} + +class Super {} + +class A extends Super {} + + +aspect X { + void Base.simple(List<? extends Super> list) {} +} diff --git a/tests/java5/generics/itds/ParameterizedMethodITD2.aj b/tests/java5/generics/itds/ParameterizedMethodITD2.aj new file mode 100644 index 000000000..7dfd3e032 --- /dev/null +++ b/tests/java5/generics/itds/ParameterizedMethodITD2.aj @@ -0,0 +1,20 @@ +import java.util.*; + +class Base { } + +public class ParameterizedMethodITD2 { + + public static void main(String[] argv) { + List<A> as = new ArrayList<A>(); + new Base().simple(as); // error, A is not a number... + } +} + +class Super {} + +class A extends Super {} + + +aspect X { + void Base.simple(List<? extends Number> list) {} +} |