]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Import/objc-try-catch/test.m
Vendor import of clang trunk r351319 (just before the release_80 branch
[FreeBSD/FreeBSD.git] / test / Import / objc-try-catch / test.m
1 // RUN: clang-import-test -x objective-c++ -Xcc -fobjc-exceptions -dump-ast -import %S/Inputs/F.m -expression %s | FileCheck %s
2
3 // FIXME: Seems that Objective-C try/catch crash codegen on Windows. Reenable once this is fixed.
4 // UNSUPPORTED: system-windows
5
6 // CHECK: ObjCAtTryStmt
7 // CHECK-NEXT: CompoundStmt
8 // CHECK-NEXT: DeclStmt
9 // CHECK-NEXT: VarDecl
10 // CHECK-NEXT: ObjCAtThrowStmt
11 // CHECK-NEXT: ImplicitCastExpr
12 // CHECK-NEXT: DeclRefExpr
13 // CHECK-NEXT: ObjCAtCatchStmt
14 // CHECK-NEXT: VarDecl
15 // CHECK-SAME: varname
16 // CHECK-SAME: 'Exception *'
17 // CHECK-NEXT: CompoundStmt
18 // CHECK-NEXT: ObjCAtFinallyStmt
19 // CHECK-NEXT: CompoundStmt
20
21 // CHECK-NEXT: ObjCAtTryStmt
22 // CHECK-NEXT: CompoundStmt
23 // CHECK-NEXT: ObjCAtCatchStmt
24 // CHECK-NEXT: VarDecl
25 // CHECK-SAME: varname1
26 // CHECK-SAME: 'Exception *'
27 // CHECK-NEXT: CompoundStmt
28 // CHECK-NEXT: ObjCAtThrowStmt
29 // CHECK-NEXT: <<NULL>>
30 // CHECK-NEXT: ObjCAtCatchStmt
31 // CHECK-NEXT: VarDecl
32 // CHECK-SAME: varname2
33 // CHECK-SAME: 'OtherException *'
34 // CHECK-NEXT: CompoundStmt
35
36 // CHECK-NEXT: ObjCAtTryStmt
37 // CHECK-NEXT: CompoundStmt
38 // CHECK-NEXT: ObjCAtFinallyStmt
39 // CHECK-NEXT: CompoundStmt
40
41 void expr() {
42   f();
43 }