44 import com.sun.tools.javac.code.Scope; |
44 import com.sun.tools.javac.code.Scope; |
45 import com.sun.tools.javac.code.Symbol; |
45 import com.sun.tools.javac.code.Symbol; |
46 import com.sun.tools.javac.code.Symbol.*; |
46 import com.sun.tools.javac.code.Symbol.*; |
47 import com.sun.tools.javac.code.Type; |
47 import com.sun.tools.javac.code.Type; |
48 import com.sun.tools.javac.code.Type.ClassType; |
48 import com.sun.tools.javac.code.Type.ClassType; |
|
49 import com.sun.tools.javac.code.TypeTag; |
49 import com.sun.tools.javac.comp.AttrContext; |
50 import com.sun.tools.javac.comp.AttrContext; |
50 import com.sun.tools.javac.comp.Env; |
51 import com.sun.tools.javac.comp.Env; |
51 import com.sun.tools.javac.tree.JCTree; |
52 import com.sun.tools.javac.tree.JCTree; |
52 import com.sun.tools.javac.tree.JCTree.JCFieldAccess; |
53 import com.sun.tools.javac.tree.JCTree.JCFieldAccess; |
53 import com.sun.tools.javac.tree.JCTree.JCImport; |
54 import com.sun.tools.javac.tree.JCTree.JCImport; |
514 if (isInterface() || isAnnotationType() || |
515 if (isInterface() || isAnnotationType() || |
515 (tsym == env.syms.objectType.tsym)) |
516 (tsym == env.syms.objectType.tsym)) |
516 return null; |
517 return null; |
517 Type sup = env.types.supertype(type); |
518 Type sup = env.types.supertype(type); |
518 return TypeMaker.getType(env, |
519 return TypeMaker.getType(env, |
519 (sup != type) ? sup : env.syms.objectType); |
520 (sup.hasTag(TypeTag.NONE)) ? env.syms.objectType : sup); |
520 } |
521 } |
521 |
522 |
522 /** |
523 /** |
523 * Test whether this class is a subclass of the specified class. |
524 * Test whether this class is a subclass of the specified class. |
524 * |
525 * |