Commits

Anonymous committed eccfb56

Issue #198925: AssertionError: class def not found - fixed.

  • Participants
  • Parent commits 7ad3298

Comments (0)

Files changed (1)

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

                   // in the presence of inner classes. Should it be deleted here?
                   checkDisjoint(pos, flags,
                                 ABSTRACT,
-                                PRIVATE | STATIC))
-                 &&
-                 checkDisjoint(pos, flags,
-                               ABSTRACT | INTERFACE,
-                               FINAL | NATIVE | SYNCHRONIZED)
-                 &&
-                 checkDisjoint(pos, flags,
-                               PUBLIC,
-                               PRIVATE | PROTECTED)
-                 &&
-                 checkDisjoint(pos, flags,
-                               PRIVATE,
-                               PUBLIC | PROTECTED)
-                 &&
-                 checkDisjoint(pos, flags,
-                               FINAL,
-                               VOLATILE)
-                 &&
-                 (sym.kind == TYP ||
-                  checkDisjoint(pos, flags,
-                                ABSTRACT | NATIVE,
-                                STRICTFP))) {
-            // skip
+                                PRIVATE | STATIC))) {
+            if (checkDisjoint(pos, flags,
+                                ABSTRACT | INTERFACE,
+                                FINAL | NATIVE | SYNCHRONIZED)) {
+                if (checkDisjoint(pos, flags,
+                                    PUBLIC,
+                                    PRIVATE | PROTECTED)) {
+                    if (checkDisjoint(pos, flags,
+                                        PRIVATE,
+                                        PUBLIC | PROTECTED)) {
+                        if (checkDisjoint(pos, flags,
+                                            FINAL,
+                                            VOLATILE)) {
+                            if ((sym.kind == TYP ||
+                                    checkDisjoint(pos, flags,
+                                                ABSTRACT | NATIVE,
+                                                STRICTFP))) {
+                            } else {
+                                flags &= ~STRICTFP;
+                            }
+                        } else {
+                            flags &= ~(VOLATILE);
+                        }
+                    } else {
+                        flags &= ~(PUBLIC | PROTECTED);
+                    }
+                } else {
+                    flags &= ~(PRIVATE | PROTECTED);
+                }
+            } else {
+                flags &= ~(FINAL | NATIVE | SYNCHRONIZED);
+            }                
+        } else {
+            flags &= ~(PRIVATE | STATIC);
         }
         return flags & (mask | ~StandardFlags) | implicit;
     }