From: rofl0r Date: Fri, 4 Jan 2013 17:47:17 +0000 (+0100) Subject: setjmp.h: add struct tag for sigjmp_buf (GCC C++ compatibility) X-Git-Tag: v0.9.9~31 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=d84923d89e4fe46877334cbaa5e4549f2c4cb8a6;p=oweals%2Fmusl.git setjmp.h: add struct tag for sigjmp_buf (GCC C++ compatibility) the anonymous struct typedef with array notation breaks with GCC in C++ mode: error: non-local function 'static (& boost::signal_handler::jump_buffer())[1]' uses anonymous type this is a known GCC issue, as search results for that error msg suggest. since this is hard to work around in the calling C++ code, a fix in musl is preferable. --- diff --git a/include/setjmp.h b/include/setjmp.h index abc74234..5456d8f8 100644 --- a/include/setjmp.h +++ b/include/setjmp.h @@ -13,7 +13,7 @@ extern "C" { #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \ || defined(_BSD_SOURCE) -typedef struct { +typedef struct __sigjmp_buf { jmp_buf __jb; unsigned long __fl; unsigned long __ss[128/sizeof(long)];