-
Bug
-
Resolution: Fixed
-
P3
-
5.0
from http://forum.java.sun.com/thread.jsp?forum=316&thread=523496
I have changed the code to make it compile:
abstract class Test {
protected <T> void getConstructor(Class<? extends T> clazz) {
Class<? extends T> impl;
impl = clazz.isInterface() ? getImplementationClass(clazz) : clazz;
if (clazz.isInterface()) {
impl = getImplementationClass(clazz);
} else {
impl = clazz;
}
}
abstract public <T> Class<? extends T>
getImplementationClass(Class<T> interfaceClass);
}
This line don't compile in tiger-fcs, but compiled in b48:
impl = clazz.isInterface() ? getImplementationClass(clazz) : clazz;
###@###.### 10/27/04 01:05 GMT
I have changed the code to make it compile:
abstract class Test {
protected <T> void getConstructor(Class<? extends T> clazz) {
Class<? extends T> impl;
impl = clazz.isInterface() ? getImplementationClass(clazz) : clazz;
if (clazz.isInterface()) {
impl = getImplementationClass(clazz);
} else {
impl = clazz;
}
}
abstract public <T> Class<? extends T>
getImplementationClass(Class<T> interfaceClass);
}
This line don't compile in tiger-fcs, but compiled in b48:
impl = clazz.isInterface() ? getImplementationClass(clazz) : clazz;
###@###.### 10/27/04 01:05 GMT
- relates to
-
JDK-6176479 Problem inferring types with wildcards
- Closed
-
JDK-6384510 improper handling of wildcard captures
- Closed
-
JDK-5034571 Wildcard capture must use the bounds of the formal
- Closed
-
JDK-6176471 (reflect) Extend Class.forName with class tokens
- Closed