[compiler-rt] 53558ed - sanitizer_common: fix SIG_DFL warning
Dmitry Vyukov via llvm-commits
llvm-commits at lists.llvm.org
Tue May 11 22:23:25 PDT 2021
Author: Dmitry Vyukov
Date: 2021-05-12T07:23:20+02:00
New Revision: 53558ed8a0abaf2f457cfa3d98c85d0fa1e84b22
URL: https://github.com/llvm/llvm-project/commit/53558ed8a0abaf2f457cfa3d98c85d0fa1e84b22
DIFF: https://github.com/llvm/llvm-project/commit/53558ed8a0abaf2f457cfa3d98c85d0fa1e84b22.diff
LOG: sanitizer_common: fix SIG_DFL warning
Currently we have:
sanitizer_posix_libcdep.cpp:146:27: warning: cast between incompatible
function types from ‘__sighandler_t’ {aka ‘void (*)(int)’} to ‘sa_sigaction_t’
146 | sigact.sa_sigaction = (sa_sigaction_t)SIG_DFL;
We don't set SA_SIGINFO, so we need to assign to sa_handler.
And SIG_DFL is meant for sa_handler, so this gets rid of both
compiler warning, type cast and potential runtime misbehavior.
Reviewed By: vitalybuka
Differential Revision: https://reviews.llvm.org/D102162
Added:
Modified:
compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
Removed:
################################################################################
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
index 7ff48c35851eb..d1d8e509c4dba 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
@@ -143,7 +143,7 @@ void Abort() {
if (GetHandleSignalMode(SIGABRT) != kHandleSignalNo) {
struct sigaction sigact;
internal_memset(&sigact, 0, sizeof(sigact));
- sigact.sa_sigaction = (sa_sigaction_t)SIG_DFL;
+ sigact.sa_handler = SIG_DFL;
internal_sigaction(SIGABRT, &sigact, nullptr);
}
#endif
More information about the llvm-commits
mailing list