--- /dev/null
+import java.util.ArrayList;
+import java.util.List;
+
+public aspect GenericMethodAspect {
+
+ public <T> List<T> GenericMethodInterface.getStuff(){
+ return new ArrayList<T>();
+ }
+
+}
--- /dev/null
+import java.util.LinkedList;
+import java.util.List;
+
+public class GenericMethodImpl<D extends Type1> implements GenericMethodInterface{
+
+ public <T extends D> List<T> getStuff(){
+ return new LinkedList<T>();
+ }
+
+}
--- /dev/null
+import java.util.List;
+
+
+/*
+ * Created on Aug 19, 2008
+ */
+
+public class GenericMethodImpl2 extends GenericMethodImpl<Type2> {
+
+ @Override
+ public <T extends Type2> List<T> getStuff() {
+ return super.getStuff();
+ }
+
+}
--- /dev/null
+import java.util.List;
+
+
+/*
+ * Created on Aug 19, 2008
+ */
+
+public interface GenericMethodInterface {
+
+ public <T> List<T> getStuff();
+
+}
--- /dev/null
+
+/*
+ * Created on Aug 19, 2008
+ */
+
+public interface Type1 {
+
+}
--- /dev/null
+
+/*
+ * Created on Aug 19, 2008
+ */
+
+public class Type2 implements Type1 {
+
+}