-
Notifications
You must be signed in to change notification settings - Fork 121
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Make sure the unwind state is synchronised between the Objective-C and C++ exception objects. * Reintroduce the is-pointer callback so that `__cxa_begin_catch` adjusts the pointer correctly. Objective-C++ code uses `__cxa_begin_catch` without the `objc_begin_catch` wrapper and the runtime does not call the `__do_catch` method on the type info if the type info is an exact match, so the caught object ended up being a pointer to the object. This also meant that we needed to remove the double dereference in the `__do_catch` methods. * Introduce a subclass of `std::type_info` for all Objective-C types and move the `virtual` functions there. This should simplify supporting libc++abi.
- Loading branch information
1 parent
d5973fb
commit ec5c0bc
Showing
2 changed files
with
78 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters