summaryrefslogtreecommitdiffstats
path: root/libcxxabi/test/catch_pointer_nullptr.pass.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [libcxxabi] When catching an exception of type nullptr_t with a handler ofRichard Smith2016-07-191-4/+6
| | | | | | | | | | | | | pointer-to-member type, produce a null value of the right type. This fixes a bug where throwing an exception of type nullptr_t and catching it as a pointer-to-member would not guarantee to produce a null value in the catch handler. The fix is pretty simple: we statically allocate a constant null pointer-to-data-member representation and a constant null pointer-to-member-function representation, and produce the address of the relevant value as the adjusted pointer for the exception. llvm-svn: 276016
* [libcxxabi] Introduce a -fno-exceptions libc++abi libary variantAsiri Rathnayake2016-05-311-1/+1
| | | | | | | | | | | | | | | | | Currently there is only support for a -fno-exceptions libc++ build. This is problematic for functions such as std::terminate() which are defined in libc++abi and using any of those functions throws away most of the benefits of using -fno-exceptions (code-size). This patch introduces a -fno-exceptions libc++abi build to address this issue. This new variant of libc++abi cannot be linked against any with-exceptions code as some symbols necessary for handling exceptions are missing in this library. Differential revision: http://reviews.llvm.org/D20677 Reviewers: EricWF, mclow.lists, bcraig llvm-svn: 271267
* Fix or disable C++11 tests in C++03 modeEric Fiselier2015-08-201-22/+2
| | | | llvm-svn: 245531
* [libcxxabi] Fix multi-level pointer conversions and pointer to member ↵Eric Fiselier2015-04-021-4/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | conversion detection. Summary: Currently there are bugs in out detection of multi-level pointer conversions and pointer to member conversions. This patch fixes the following issues. * Allow multi-level pointers with different nested qualifiers. * Allow multi-level mixed pointers to objects and pointers to members with different nested qualifiers. * Allow conversions from `int Base::*` to `int Derived::*` but only for non-nested pointers. There is still some work that needs to be done to clean this patch up but I want to get some input on it. Open questions: * Does `__pointer_to_member_type_info::can_catch(...)` need to adjust the pointer if a base to derived conversion is performed? Reviewers: danalbert, compnerd, mclow.lists Reviewed By: mclow.lists Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D8758 llvm-svn: 233984
* Rename all of the tests in preparation for merging lit configs with libcxxJonathan Roelofs2015-01-211-0/+64
http://reviews.llvm.org/D7101 llvm-svn: 226691
OpenPOWER on IntegriCloud