src/share/classes/com/sun/tools/javac/comp/Check.java

changeset 2016
f4efd6ef6e80
parent 2000
4a6acc42c3a1
child 2024
5d2d484a1216
equal deleted inserted replaced
2015:a4b9a8859e58 2016:f4efd6ef6e80
1048 * @param sym The defined symbol. 1048 * @param sym The defined symbol.
1049 */ 1049 */
1050 long checkFlags(DiagnosticPosition pos, long flags, Symbol sym, JCTree tree) { 1050 long checkFlags(DiagnosticPosition pos, long flags, Symbol sym, JCTree tree) {
1051 long mask; 1051 long mask;
1052 long implicit = 0; 1052 long implicit = 0;
1053
1053 switch (sym.kind) { 1054 switch (sym.kind) {
1054 case VAR: 1055 case VAR:
1055 if (sym.owner.kind != TYP) 1056 if (sym.owner.kind != TYP)
1056 mask = LocalVarFlags; 1057 mask = LocalVarFlags;
1057 else if ((sym.owner.flags_field & INTERFACE) != 0) 1058 else if ((sym.owner.flags_field & INTERFACE) != 0)
1068 implicit = PRIVATE; 1069 implicit = PRIVATE;
1069 mask = PRIVATE; 1070 mask = PRIVATE;
1070 } else 1071 } else
1071 mask = ConstructorFlags; 1072 mask = ConstructorFlags;
1072 } else if ((sym.owner.flags_field & INTERFACE) != 0) { 1073 } else if ((sym.owner.flags_field & INTERFACE) != 0) {
1073 if ((flags & (DEFAULT | STATIC)) != 0) { 1074 if ((sym.owner.flags_field & ANNOTATION) != 0) {
1075 mask = AnnotationTypeElementMask;
1076 implicit = PUBLIC | ABSTRACT;
1077 } else if ((flags & (DEFAULT | STATIC)) != 0) {
1074 mask = InterfaceMethodMask; 1078 mask = InterfaceMethodMask;
1075 implicit = PUBLIC; 1079 implicit = PUBLIC;
1076 if ((flags & DEFAULT) != 0) { 1080 if ((flags & DEFAULT) != 0) {
1077 implicit |= ABSTRACT; 1081 implicit |= ABSTRACT;
1078 } 1082 }
1079 } else { 1083 } else {
1080 mask = implicit = InterfaceMethodFlags; 1084 mask = implicit = InterfaceMethodFlags;
1081 } 1085 }
1082 } 1086 } else {
1083 else {
1084 mask = MethodFlags; 1087 mask = MethodFlags;
1085 } 1088 }
1086 // Imply STRICTFP if owner has STRICTFP set. 1089 // Imply STRICTFP if owner has STRICTFP set.
1087 if (((flags|implicit) & Flags.ABSTRACT) == 0 || 1090 if (((flags|implicit) & Flags.ABSTRACT) == 0 ||
1088 ((flags) & Flags.DEFAULT) != 0) 1091 ((flags) & Flags.DEFAULT) != 0)

mercurial