Skip to content

Commit b48f4ed

Browse files
committed
[libc++][hardening] Use __builtin_verbose_trap if it's available.
Keep falling back to `__builtin_trap` on older versions of Clang.
1 parent d02d8df commit b48f4ed

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(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)