hotspot/src/share/vm/classfile/classFileParser.cpp
changeset 30136 1c5202fa105b
parent 29201 fee2bbb2ec1d
child 30764 fec48bf5a827
equal deleted inserted replaced
30135:bbb14e0a0c79 30136:1c5202fa105b
  4836       if (!is_public || is_static || is_final || is_native || !is_abstract) {
  4836       if (!is_public || is_static || is_final || is_native || !is_abstract) {
  4837         is_illegal = true;
  4837         is_illegal = true;
  4838       }
  4838       }
  4839     }
  4839     }
  4840   } else { // not interface
  4840   } else { // not interface
  4841     if (is_initializer) {
  4841     if (has_illegal_visibility(flags)) {
  4842       if (is_static || is_final || is_synchronized || is_native ||
  4842       is_illegal = true;
  4843           is_abstract || (major_gte_15 && is_bridge)) {
  4843     } else {
  4844         is_illegal = true;
  4844       if (is_initializer) {
  4845       }
  4845         if (is_static || is_final || is_synchronized || is_native ||
  4846     } else { // not initializer
  4846             is_abstract || (major_gte_15 && is_bridge)) {
  4847       if (is_abstract) {
       
  4848         if ((is_final || is_native || is_private || is_static ||
       
  4849             (major_gte_15 && (is_synchronized || is_strict)))) {
       
  4850           is_illegal = true;
  4847           is_illegal = true;
  4851         }
  4848         }
  4852       }
  4849       } else { // not initializer
  4853       if (has_illegal_visibility(flags)) {
  4850         if (is_abstract) {
  4854         is_illegal = true;
  4851           if ((is_final || is_native || is_private || is_static ||
       
  4852               (major_gte_15 && (is_synchronized || is_strict)))) {
       
  4853             is_illegal = true;
       
  4854           }
       
  4855         }
  4855       }
  4856       }
  4856     }
  4857     }
  4857   }
  4858   }
  4858 
  4859 
  4859   if (is_illegal) {
  4860   if (is_illegal) {