Fix -Wmissing-field-initializers warnings.
authorDaniel Dunbar <daniel@zuster.org>
Fri, 30 Jul 2010 17:49:04 +0000 (17:49 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Fri, 30 Jul 2010 17:49:04 +0000 (17:49 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109872 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Support/CrashRecoveryContext.cpp

index 4514a9948d4cc978a704475a8c602e3cdb5c4e49..de98132539416fa49a11c23565aebd883281a19b 100644 (file)
@@ -87,18 +87,9 @@ void CrashRecoveryContext::Disable() {
 
 #include <signal.h>
 
-static struct {
-  int Signal;
-  struct sigaction PrevAction;
-} SignalInfo[] = {
-  { SIGABRT, {} },
-  { SIGBUS,  {} },
-  { SIGFPE,  {} },
-  { SIGILL,  {} },
-  { SIGSEGV, {} },
-  { SIGTRAP, {} },
-};
-static const unsigned NumSignals = sizeof(SignalInfo) / sizeof(SignalInfo[0]);
+static int Signals[] = { SIGABRT, SIGBUS, SIGFPE, SIGILL, SIGSEGV, SIGTRAP };
+static const unsigned NumSignals = sizeof(Signals) / sizeof(Signals[0]);
+static struct sigaction PrevActions[NumSignals];
 
 static void CrashRecoverySignalHandler(int Signal) {
   // Lookup the current thread local recovery object.
@@ -142,8 +133,7 @@ void CrashRecoveryContext::Enable() {
   sigemptyset(&Handler.sa_mask);
 
   for (unsigned i = 0; i != NumSignals; ++i) {
-    sigaction(SignalInfo[i].Signal, &Handler,
-              &SignalInfo[i].PrevAction);
+    sigaction(Signals[i], &Handler, &PrevActions[i]);
   }
 }
 
@@ -155,7 +145,7 @@ void CrashRecoveryContext::Disable() {
 
   // Restore the previous signal handlers.
   for (unsigned i = 0; i != NumSignals; ++i)
-    sigaction(SignalInfo[i].Signal, &SignalInfo[i].PrevAction, 0);
+    sigaction(Signals[i], &PrevActions[i], 0);
 }
 
 #endif