1.1 --- a/src/share/classes/com/sun/tools/javac/code/Flags.java Tue Oct 16 21:03:36 2012 -0700 1.2 +++ b/src/share/classes/com/sun/tools/javac/code/Flags.java Wed Oct 17 16:43:26 2012 +0100 1.3 @@ -67,6 +67,7 @@ 1.4 if ((mask&NATIVE) != 0) flags.add(Flag.NATIVE); 1.5 if ((mask&INTERFACE) != 0) flags.add(Flag.INTERFACE); 1.6 if ((mask&ABSTRACT) != 0) flags.add(Flag.ABSTRACT); 1.7 + if ((mask&DEFAULT) != 0) flags.add(Flag.DEFAULT); 1.8 if ((mask&STRICTFP) != 0) flags.add(Flag.STRICTFP); 1.9 if ((mask&BRIDGE) != 0) flags.add(Flag.BRIDGE); 1.10 if ((mask&SYNTHETIC) != 0) flags.add(Flag.SYNTHETIC); 1.11 @@ -252,6 +253,11 @@ 1.12 */ 1.13 public static final long CLASH = 1L<<42; 1.14 1.15 + /** 1.16 + * Flag that marks either a default method or an interface containing default methods 1.17 + */ 1.18 + public static final long DEFAULT = 1L<<43; 1.19 + 1.20 /** Modifier masks. 1.21 */ 1.22 public static final int 1.23 @@ -267,7 +273,10 @@ 1.24 MethodFlags = AccessFlags | ABSTRACT | STATIC | NATIVE | 1.25 SYNCHRONIZED | FINAL | STRICTFP; 1.26 public static final long 1.27 - LocalVarFlags = FINAL | PARAMETER; 1.28 + ExtendedStandardFlags = (long)StandardFlags | DEFAULT, 1.29 + InterfaceDefaultMethodMask = ABSTRACT | PUBLIC | STRICTFP | SYNCHRONIZED | DEFAULT, 1.30 + LocalVarFlags = FINAL | PARAMETER; 1.31 + 1.32 1.33 public static Set<Modifier> asModifierSet(long flags) { 1.34 Set<Modifier> modifiers = modifierSets.get(flags); 1.35 @@ -320,6 +329,7 @@ 1.36 NATIVE("native"), 1.37 INTERFACE("interface"), 1.38 ABSTRACT("abstract"), 1.39 + DEFAULT("default"), 1.40 STRICTFP("strictfp"), 1.41 BRIDGE("bridge"), 1.42 SYNTHETIC("synthetic"),