* Fix a copy-and-paste error when setting the unexpected exception handler
(actually set the terminate handler by mistake).
* Fix some warnings.
Patch by Joerg Sonnenberger!
* Don't call the _fast version of the TLS accessor in terminate() or unexpected().
1) TLS may not have been set up yet.
2) When we're in one of these functions, Really Bad Stuff has happened and potentially saving a few cycles really isn't important.
* Merge in fixes from FreeBSD trunk to make atomics work with recent clang.
three fixes:
- Don't treat pointers to members as pointers in catch blocks (they're usually
fat pointers).
- Correctly catch foreign exceptions in catchalls.
- Ensure that a happens-before relationship is established when setting
terminate handlers in one thread and calling them in another.