8016640: compiler hangs if the generics arity of a base class is wrong

Check.checkCompatibleConcretes hang when javac creates synthetic supertypes for 269 model API

Reviewed-by: jjg
This commit is contained in:
Maurizio Cimadamore 2013-07-17 14:16:25 +01:00
parent defbb67771
commit 8850329bc1
4 changed files with 15 additions and 2 deletions

View file

@ -46,6 +46,7 @@ import com.sun.tools.javac.code.Symbol;
import com.sun.tools.javac.code.Symbol.*;
import com.sun.tools.javac.code.Type;
import com.sun.tools.javac.code.Type.ClassType;
import com.sun.tools.javac.code.TypeTag;
import com.sun.tools.javac.comp.AttrContext;
import com.sun.tools.javac.comp.Env;
import com.sun.tools.javac.tree.JCTree;
@ -516,7 +517,7 @@ public class ClassDocImpl extends ProgramElementDocImpl implements ClassDoc {
return null;
Type sup = env.types.supertype(type);
return TypeMaker.getType(env,
(sup != type) ? sup : env.syms.objectType);
(sup.hasTag(TypeTag.NONE)) ? env.syms.objectType : sup);
}
/**