40 * as well as special classes such as java.lang.Object, which need |
40 * as well as special classes such as java.lang.Object, which need |
41 * to be known to the compiler. All symbols are held in instance |
41 * to be known to the compiler. All symbols are held in instance |
42 * fields. This makes it possible to work in multiple concurrent |
42 * fields. This makes it possible to work in multiple concurrent |
43 * projects, which might use different class files for library classes. |
43 * projects, which might use different class files for library classes. |
44 * |
44 * |
45 * <p><b>This is NOT part of any API supported by Sun Microsystems. If |
45 * <p><b>This is NOT part of any supported API. |
46 * you write code that depends on this, you do so at your own risk. |
46 * If you write code that depends on this, you do so at your own risk. |
47 * This code and its internal interfaces are subject to change or |
47 * This code and its internal interfaces are subject to change or |
48 * deletion without notice.</b> |
48 * deletion without notice.</b> |
49 */ |
49 */ |
50 public class Symtab { |
50 public class Symtab { |
51 /** The context key for the symbol table. */ |
51 /** The context key for the symbol table. */ |
450 synthesizeEmptyInterfaceIfMissing(polymorphicSignatureType); |
450 synthesizeEmptyInterfaceIfMissing(polymorphicSignatureType); |
451 synthesizeBoxTypeIfMissing(doubleType); |
451 synthesizeBoxTypeIfMissing(doubleType); |
452 synthesizeBoxTypeIfMissing(floatType); |
452 synthesizeBoxTypeIfMissing(floatType); |
453 synthesizeBoxTypeIfMissing(voidType); |
453 synthesizeBoxTypeIfMissing(voidType); |
454 |
454 |
455 // Enter a synthetic class that is used to mark Sun |
455 // Enter a synthetic class that is used to mark internal |
456 // proprietary classes in ct.sym. This class does not have a |
456 // proprietary classes in ct.sym. This class does not have a |
457 // class file. |
457 // class file. |
458 ClassType proprietaryType = (ClassType)enterClass("sun.Proprietary+Annotation"); |
458 ClassType proprietaryType = (ClassType)enterClass("sun.Proprietary+Annotation"); |
459 this.proprietaryType = proprietaryType; |
459 this.proprietaryType = proprietaryType; |
460 ClassSymbol proprietarySymbol = (ClassSymbol)proprietaryType.tsym; |
460 ClassSymbol proprietarySymbol = (ClassSymbol)proprietaryType.tsym; |