[libcxx-commits] [PATCH] D121478: [libc++] Add a lightweight overridable assertion handler
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Mar 23 10:04:01 PDT 2022
ldionne updated this revision to Diff 417676.
ldionne marked 3 inline comments as done.
ldionne edited the summary of this revision.
ldionne added a comment.
Herald added a subscriber: arphaman.
Make sure load-time failures can't happen when back-deploying, and add more tests.
I think this should be ready to go if CI is happy, and I'll address comments about being able to customize the default handler after including any header in separate patches, as outlined in the comments.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D121478/new/
https://reviews.llvm.org/D121478
Files:
libcxx/CMakeLists.txt
libcxx/cmake/caches/Generic-assertions.cmake
libcxx/docs/BuildingLibcxx.rst
libcxx/docs/ReleaseNotes.rst
libcxx/docs/UsingLibcxx.rst
libcxx/include/__assert
libcxx/include/__availability
libcxx/include/__config_site.in
libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.debug.incomplete.abilist
libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.nodebug.noincomplete.abilist
libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.debug.incomplete.abilist
libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.nodebug.noincomplete.abilist
libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.debug.incomplete.abilist
libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.debug.noincomplete.abilist
libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.nodebug.incomplete.abilist
libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.debug.incomplete.abilist
libcxx/src/CMakeLists.txt
libcxx/src/assert.cpp
libcxx/src/legacy_debug_handler.cpp
libcxx/test/libcxx/assertions/assertions_disabled.pass.cpp
libcxx/test/libcxx/assertions/customize_handler.backdeployment.pass.cpp
libcxx/test/libcxx/assertions/customize_handler.pass.cpp
libcxx/test/libcxx/assertions/debug_mode_compatibility.pass.cpp
libcxx/test/libcxx/assertions/default_handler.abort.pass.cpp
libcxx/test/libcxx/assertions/default_handler.availability.verify.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.back.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.front.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.subscript.pass.cpp
libcxx/test/libcxx/containers/sequences/deque/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.erase_iter.end.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cback.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cfront.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cindex.oob.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.front.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.index.oob.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/debug/check_assertion_test.pass.cpp
libcxx/test/libcxx/debug/containers/string.pass.cpp
libcxx/test/libcxx/debug/debug_abort.pass.cpp
libcxx/test/libcxx/debug/register_debug_handler.pass.cpp
libcxx/test/libcxx/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/assert.deallocate.pass.cpp
libcxx/test/libcxx/experimental/memory/memory.resource.adaptor/memory.resource.adaptor.mem/assert.deallocate.pass.cpp
libcxx/test/libcxx/input.output/filesystems/class.path/path.itr/assert.iterator.pass.cpp
libcxx/test/libcxx/iterators/assert.advance.pass.cpp
libcxx/test/libcxx/iterators/assert.next.pass.cpp
libcxx/test/libcxx/iterators/assert.prev.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.back.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cback.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cfront.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cindex.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.front.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.index.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.erase_iter.null.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.pop_back.pass.cpp
libcxx/test/libcxx/strings/string.view/assert.ctor.pointer.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/assert.set_exception.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/assert.set_exception_at_thread_exit.pass.cpp
libcxx/test/libcxx/utilities/optional/optional.object/optional.object.observe/assert.dereference.pass.cpp
libcxx/test/libcxx/utilities/optional/optional.object/optional.object.observe/assert.op_arrow.pass.cpp
libcxx/test/support/check_assertion.h
libcxx/test/support/test.support/test_check_assertion.pass.cpp
libcxx/utils/libcxx/test/params.py
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D121478.417676.patch
Type: text/x-patch
Size: 77886 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20220323/a55e30fe/attachment-0001.bin>
More information about the libcxx-commits
mailing list