blob: 3fede9cc7909595660f3abca6161cfb142c4feee [file] [log] [blame]
class TestClass {
public final class TestMapper<X> {
public <U, T extends Mapping<X, U>> T mapType() {
SimpleMapping<X, U> mapping = new SimpleMapping<X, U>();
return (T) mapping; //This is reports "Inconvertible types; cannot cast TestClass.SimpleMapping<X,U> to 'T'"
}
}
private final class SimpleMapping<X, U> implements Mapping<X, U> {}
public interface Mapping<F, U> {}
}
class TestClass1 {
public final class TestMapper<X> {
public <U, T extends Mapping<X, U>> T mapType() {
Mapping<X, U> mapping = new SimpleMapping<X, U>(); //Changed type to interface
return (T) mapping;
}
}
private final class SimpleMapping<X, U> implements Mapping<X, U> {}
public interface Mapping<F, U> {}
}