From 8b5370313dcc00a45ea5c3e8b4c497bc00fd8e13 Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Tue, 11 Jun 2013 21:55:13 -0700 Subject: Allegedly remove all manual memory management --- src/common/core.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/common/core.cpp') diff --git a/src/common/core.cpp b/src/common/core.cpp index 994de93..153414d 100644 --- a/src/common/core.cpp +++ b/src/common/core.cpp @@ -36,7 +36,10 @@ sigfunc compat_signal(int signo, sigfunc func) sact.sa_flags = 0; if (sigaction(signo, &sact, &oact) < 0) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wold-style-cast" return SIG_ERR; +#pragma GCC diagnostic pop return oact.sa_handler; } @@ -50,7 +53,10 @@ static __attribute__((noreturn)) void sig_proc(int) { for (int i = 1; i < 31; ++i) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wold-style-cast" compat_signal(i, SIG_IGN); +#pragma GCC diagnostic pop term_func(); _exit(0); } @@ -74,17 +80,23 @@ int main(int argc, char **argv) // set up exit handlers *after* the initialization has happened. // This is because term_func is likely to depend on successful init. +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wold-style-cast" compat_signal(SIGPIPE, SIG_IGN); +#pragma GCC diagnostic pop compat_signal(SIGTERM, sig_proc); compat_signal(SIGINT, sig_proc); compat_signal(SIGCHLD, chld_proc); // Signal to create coredumps by system when necessary (crash) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wold-style-cast" compat_signal(SIGSEGV, SIG_DFL); compat_signal(SIGBUS, SIG_DFL); compat_signal(SIGTRAP, SIG_DFL); compat_signal(SIGILL, SIG_DFL); compat_signal(SIGFPE, SIG_DFL); +#pragma GCC diagnostic pop atexit(term_func); -- cgit v1.2.3-70-g09d2