diff options
author | David Ayers <ayers@gcc.gnu.org> | 2009-03-12 22:28:15 +0000 |
---|---|---|
committer | David Ayers <ayers@gcc.gnu.org> | 2009-03-12 22:28:15 +0000 |
commit | faef499bdf0a88f9ec9d3282728ee081f12b8cb4 (patch) | |
tree | 53acb0e9cd94a0ada09c499da8ecc1b24cdba655 /libobjc/objc/objc-api.h | |
parent | 03a181983d217bfc13d295e698edc1eae0e8dacd (diff) | |
download | gcc-faef499bdf0a88f9ec9d3282728ee081f12b8cb4.zip gcc-faef499bdf0a88f9ec9d3282728ee081f12b8cb4.tar.gz gcc-faef499bdf0a88f9ec9d3282728ee081f12b8cb4.tar.bz2 |
re PR libobjc/27466 (RFE: Support for libobjc equivalent of std::set_unexpected)
libobjc/
2009-03-12 Richard Frith-Macdonald <rfm@gnu.org>
David Ayers <ayers@fsfe.org>
PR libobjc/27466
* objc/objc-api.h (_objc_unexpected_exception): Declare
new hook. Update copyright dates.
* exception.c (objc_exception_throw): Use hook. Update
copyright dates.
* libobjc.def (_objc_unexpected_exception): Export hook.
Update copyright dates.
gcc/testsuite/
2009-03-12 David Ayers <ayers@fsfe.org>
PR libobjc/27466
* objc/execute/exceptions/handler-1.m. New test.
From-SVN: r144826
Diffstat (limited to 'libobjc/objc/objc-api.h')
-rw-r--r-- | libobjc/objc/objc-api.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libobjc/objc/objc-api.h b/libobjc/objc/objc-api.h index 8100c6c..02a8c7a 100644 --- a/libobjc/objc/objc-api.h +++ b/libobjc/objc/objc-api.h @@ -1,5 +1,6 @@ /* GNU Objective-C Runtime API. - Copyright (C) 1993, 1995, 1996, 1997, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 1993, 1995, 1996, 1997, 2001, 2002, 2003, 2004, 2005, + 2007, 2009 Free Software Foundation, Inc. This file is part of GCC. @@ -430,6 +431,15 @@ objc_EXPORT void (*_objc_free)(void *); objc_EXPORT IMP (*__objc_msg_forward)(SEL); objc_EXPORT IMP (*__objc_msg_forward2)(id, SEL); +/* +** Hook for uncaught exceptions. This hook is called when an exception +** is thrown and no valid exception handler is in place. The function +** is expected never to return. If the function returns the result is +** currently undefined. +*/ +objc_EXPORT void (*_objc_unexpected_exception)(id); + + Method_t class_get_class_method(MetaClass _class, SEL aSel); Method_t class_get_instance_method(Class _class, SEL aSel); |