Skip to content

Commit 1e96b4a

Browse files
var-constldionne
andauthored
[libc++][hardening] Use __builtin_verbose_trap if it's available. (#84870)
Keep falling back to `__builtin_trap` on older versions of Clang. Co-authored-by: Louis Dionne <[email protected]>
1 parent 0d26216 commit 1e96b4a

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

libcxx/vendor/llvm/default_assertion_handler.in

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,11 @@
2323

2424
#else
2525

26-
// TODO(hardening): use `__builtin_verbose_trap(message)` once that becomes available.
27-
# define _LIBCPP_ASSERTION_HANDLER(message) ((void)message, __builtin_trap())
26+
# if __has_builtin(__builtin_verbose_trap)
27+
# define _LIBCPP_ASSERTION_HANDLER(message) __builtin_verbose_trap("libc++", message)
28+
# else
29+
# define _LIBCPP_ASSERTION_HANDLER(message) ((void)message, __builtin_trap())
30+
# endif
2831

2932
#endif // _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_DEBUG
3033

0 commit comments

Comments
 (0)