1 // RUN: %clang_cc1 -triple x86_64-apple-macosx10.10 -fsyntax-only -verify -fobjc-exceptions -Wno-objc-root-class %s
6 goto L; // expected-error{{cannot jump}}
7 goto L2; // expected-error{{cannot jump}}
8 goto L3; // expected-error{{cannot jump}}
9 @try { // expected-note {{jump bypasses initialization of @try block}}
11 } @catch (A *x) { // expected-note {{jump bypasses initialization of @catch block}}
15 } @finally {// expected-note {{jump bypasses initialization of @finally block}}
20 goto L4; // expected-error{{cannot jump}}
21 goto L5; // expected-error{{cannot jump}}
22 } @catch (C *c) { // expected-note {{jump bypasses initialization of @catch block}}
24 goto L6; // expected-error{{cannot jump}}
25 } @catch (B *c) { // expected-note {{jump bypasses initialization of @catch block}}
27 } @finally { // expected-note {{jump bypasses initialization of @finally block}}
32 @try { // expected-note 2 {{jump bypasses initialization of @try block}}
35 goto L7; // expected-error{{cannot jump}}
37 goto L7; // expected-error{{cannot jump}}
40 goto L8; // expected-error{{cannot jump}}
44 } @catch (C *c) { // expected-note {{jump bypasses initialization of @catch block}}
48 goto L9; // expected-error{{cannot jump}}
49 @synchronized (X) // expected-note {{jump bypasses initialization of @synchronized block}}
74 @implementation Greeter
78 goto blargh; // expected-error {{cannot jump}}
79 } @catch (...) { // expected-note {{jump bypasses initialization of @catch block}}
86 goto L0; // expected-error {{cannot jump}}
87 typedef int A[n]; // expected-note {{jump bypasses initialization of VLA typedef}}
90 goto L1; // expected-error {{cannot jump}}
91 A b, c[10]; // expected-note 2 {{jump bypasses initialization of variable length array}}
93 goto L2; // expected-error {{cannot jump}}
94 A d[n]; // expected-note {{jump bypasses initialization of variable length array}}