diff options
author | ayers <ayers@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-12 22:28:15 +0000 |
---|---|---|
committer | ayers <ayers@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-12 22:28:15 +0000 |
commit | 5d727e51c5e237f9048d1a78ce23559839e46f6a (patch) | |
tree | 53acb0e9cd94a0ada09c499da8ecc1b24cdba655 /libobjc/objc | |
parent | 1f477a18c46bb6c3901cb019cd1bfdd8242dc2aa (diff) | |
download | gcc-5d727e51c5e237f9048d1a78ce23559839e46f6a.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144826 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libobjc/objc')
-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 8100c6cfa27..02a8c7afa3d 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); |