do not infer from wildcard with raw bound (IDEA-110947)

This commit is contained in:
anna
2013-07-24 17:14:29 +02:00
parent 504d6eff77
commit d59413a8a1
3 changed files with 25 additions and 1 deletions
@@ -0,0 +1,17 @@
interface Result {}
interface Command<R extends Result> {}
interface Procedure<C extends Command<Result>> {
}
abstract class ProcedureService {
abstract <C extends Command<Result>> Class<? extends Procedure<Command<Result>>> getProcedure(Class<C> cmd);
public <C extends Command<Result>> void execute(Class<? extends Command> aClass) {
Class<Procedure<Command<Result>>> procedureClass = getProcedure(aClass);
<error descr="Incompatible types. Found: 'java.lang.Class<capture<? extends Command>>', required: 'java.lang.Class<Command>'">Class<Command> c = aClass;</error>
<error descr="Incompatible types. Found: 'java.lang.Class<capture<? extends Command>>', required: 'java.lang.Class<C>'">Class<C> c1 = aClass;</error>
}
}