URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [testsuite/] [objc/] [execute/] [exceptions/] [finally-1.m] - Rev 826
Compare with Previous | Blame | View Log
#include <stdio.h> #include <stdlib.h> #import "../../../objc-obj-c++-shared/Object1.h" static int made_try = 0; int thrower_try_body() { made_try++; return (0); } static int made_finally = 0; int finally_body() { made_finally++; return (0); } int thrower() { @try { thrower_try_body(); @throw [Object new]; } @finally { finally_body(); } return 0; } static int made_catch = 0; int main(int ac, char *av[]) { @try { thrower(); } @catch (id exc) { made_catch++; [exc free]; } if (made_try != 1) abort (); if (made_finally != 1) abort (); if (made_catch != 1) abort (); return 0; }