Fariborz Jahanian | 397fcc1 | 2007-09-19 19:14:32 +0000 | [diff] [blame] | 1 | void * proc(); |
2 | |||||
3 | @interface Frob | ||||
4 | @end | ||||
5 | |||||
6 | @interface Frob1 | ||||
7 | @end | ||||
8 | |||||
9 | void * foo() | ||||
10 | { | ||||
11 | @try { | ||||
12 | return proc(); | ||||
13 | } | ||||
14 | @catch (Frob* ex) { | ||||
15 | @throw; | ||||
16 | } | ||||
17 | @catch (Frob1* ex) { | ||||
18 | @throw proc(); | ||||
19 | } | ||||
20 | @finally { | ||||
21 | @try { | ||||
22 | return proc(); | ||||
23 | } | ||||
24 | @catch (Frob* ex) { | ||||
25 | @throw; | ||||
26 | } | ||||
27 | @catch(...) { | ||||
28 | @throw (4,3,proc()); | ||||
29 | } | ||||
30 | } | ||||
31 | |||||
32 | @try { // expected-error {{@try statment without a @catch and @finally clause}} | ||||
33 | return proc(); | ||||
34 | } | ||||
35 | } | ||||
36 |