equal
deleted
inserted
replaced
1577 verify_error(ErrorContext::bad_code(bci), |
1577 verify_error(ErrorContext::bad_code(bci), |
1578 "Method expects a return value"); |
1578 "Method expects a return value"); |
1579 return; |
1579 return; |
1580 } |
1580 } |
1581 // Make sure "this" has been initialized if current method is an |
1581 // Make sure "this" has been initialized if current method is an |
1582 // <init>. Note that "<init>" methods in interfaces are just |
1582 // <init>. |
1583 // normal methods. Interfaces cannot have ctors. |
|
1584 if (_method->name() == vmSymbols::object_initializer_name() && |
1583 if (_method->name() == vmSymbols::object_initializer_name() && |
1585 current_frame.flag_this_uninit() && |
1584 current_frame.flag_this_uninit()) { |
1586 !current_class()->is_interface()) { |
|
1587 verify_error(ErrorContext::bad_code(bci), |
1585 verify_error(ErrorContext::bad_code(bci), |
1588 "Constructor must call super() or this() " |
1586 "Constructor must call super() or this() " |
1589 "before return"); |
1587 "before return"); |
1590 return; |
1588 return; |
1591 } |
1589 } |