// All of these should be caught as long as the check remains in the same // pass. (Although not even all of the checks are in place yet.) void break_in_finally() { while (true) { try {} finally { break; } } } void continue_in_finally() { while (true) { try {} finally { continue; } } } void goto_in_finally() { while (true) { try {} finally { goto end_of_function; } } end_of_function: {} } void labelled_break_in_finally() { mainLoop: while (true) { try {} finally { break mainLoop; } } } void labelled_continue_in_finally() { mainLoop: while (true) { try {} finally { continue mainLoop; } } } void void_return_in_finally() { try {} finally { return; } } int value_return_in_finally() { try {} finally { return -7; } } void main() { // Should not compile. return 1; }