aboutsummaryrefslogtreecommitdiffstats
path: root/aspectj5rt/java5-src/org
diff options
context:
space:
mode:
authoracolyer <acolyer>2005-11-25 19:12:27 +0000
committeracolyer <acolyer>2005-11-25 19:12:27 +0000
commit78e8ecbd934a4fbfe6e2776b59a4045b0c3e8e80 (patch)
tree41d6b54f8c8dc6b1fc08ddd9020d20e9c8d90425 /aspectj5rt/java5-src/org
parentc860a8664600e46d5b78976a59125abf0bbc7f3c (diff)
downloadaspectj-78e8ecbd934a4fbfe6e2776b59a4045b0c3e8e80.tar.gz
aspectj-78e8ecbd934a4fbfe6e2776b59a4045b0c3e8e80.zip
eliminates many warnings in the aspectj5rt package - 10 generic related warnings remain that I'm not sure how to eradicate!
Diffstat (limited to 'aspectj5rt/java5-src/org')
-rw-r--r--aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AdviceImpl.java2
-rw-r--r--aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java5
-rw-r--r--aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java2
3 files changed, 5 insertions, 4 deletions
diff --git a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AdviceImpl.java b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AdviceImpl.java
index 0cdf0bc96..77b30223f 100644
--- a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AdviceImpl.java
+++ b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AdviceImpl.java
@@ -64,7 +64,7 @@ public class AdviceImpl implements Advice {
this.genericParameterTypes = new Type[genTypes.length - syntheticCount];
for (int i = 0; i < genericParameterTypes.length; i++) {
if (genTypes[i] instanceof Class) {
- this.genericParameterTypes[i] = AjTypeSystem.getAjType((Class)genTypes[i]);
+ this.genericParameterTypes[i] = AjTypeSystem.getAjType((Class<?>)genTypes[i]);
} else {
this.genericParameterTypes[i] = genTypes[i];
}
diff --git a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java
index 60db9a2ba..8534d0743 100644
--- a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java
+++ b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java
@@ -118,8 +118,9 @@ public class AjTypeImpl<T> implements AjType<T> {
/* (non-Javadoc)
* @see org.aspectj.lang.reflect.AjType#getSupertype()
*/
- public AjType<?> getSupertype() {
- return new AjTypeImpl(clazz.getSuperclass());
+ public AjType<? super T> getSupertype() {
+ Class<? super T> superclass = clazz.getSuperclass();
+ return (AjType<? super T>) new AjTypeImpl(superclass);
}
/* (non-Javadoc)
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java b/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java
index fbd9a6644..737abc1b6 100644
--- a/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java
+++ b/aspectj5rt/java5-src/org/aspectj/lang/reflect/AjTypeSystem.java
@@ -35,7 +35,7 @@ public class AjTypeSystem {
*/
public static <T> AjType<T> getAjType(Class<T> fromClass) {
if (ajTypes.containsKey(fromClass)) {
- WeakReference<AjType> weakRefToAjType = ajTypes.get(fromClass);
+ WeakReference<AjType<T>> weakRefToAjType = (WeakReference<AjType<T>>) ajTypes.get(fromClass);
AjType<T> theAjType = weakRefToAjType.get();
if (theAjType != null) {
return theAjType;