Older g++ doesn't like global namespace qualification in struct sigaction.
diff --git a/asio/include/asio/detail/impl/signal_set_service.ipp b/asio/include/asio/detail/impl/signal_set_service.ipp index cec0408..a963c1f 100644 --- a/asio/include/asio/detail/impl/signal_set_service.ipp +++ b/asio/include/asio/detail/impl/signal_set_service.ipp
@@ -158,7 +158,7 @@ { #if defined(ASIO_HAS_SIGACTION) using namespace std; // For memset. - struct ::sigaction sa; + struct sigaction sa; memset(&sa, 0, sizeof(sa)); sa.sa_handler = asio_signal_handler; sigfillset(&sa.sa_mask); @@ -227,7 +227,7 @@ { #if defined(ASIO_HAS_SIGACTION) using namespace std; // For memset. - struct ::sigaction sa; + struct sigaction sa; memset(&sa, 0, sizeof(sa)); sa.sa_handler = SIG_DFL; if (::sigaction(signal_number, &sa, 0) == -1) @@ -279,7 +279,7 @@ { #if defined(ASIO_HAS_SIGACTION) using namespace std; // For memset. - struct ::sigaction sa; + struct sigaction sa; memset(&sa, 0, sizeof(sa)); sa.sa_handler = SIG_DFL; if (::sigaction(reg->signal_number_, &sa, 0) == -1)