xref: /llvm-project/clang/test/Rewriter/rewrite-try-catch.m (revision 7d644e1215b376ec5e915df9ea2eeb56e2d94626)
1// RUN: %clang_cc1 -rewrite-objc -fobjc-runtime=macosx-fragile-10.5 -std=c99 %s -o -
2
3@interface Foo @end
4@interface GARF @end
5
6void TRY(void);
7void SPLATCH(void);
8void MYTRY(void);
9void MYCATCH(void);
10
11void foo(void) {
12  @try  { TRY(); }
13  @catch (...) { SPLATCH(); @throw; }
14}
15
16int main(void)
17{
18
19  @try  {
20     MYTRY();
21  }
22
23  @catch (Foo* localException) {
24     MYCATCH();
25     @throw;
26  }
27
28  // no catch clause
29  @try { }
30  @finally { }
31}
32
33