On this system: $ uname -r 2.6.32-754.35.1.el6.x86_64
... the gnulib in gdb failed to build: CC glob.o ../../../binutils-gdb/gnulib/import/glob.c: In function ‘next_brace_sub’: ../../../binutils-gdb/gnulib/import/glob.c:89: error: expected declaration specifiers before ‘__THROWNL’ [...] I thought maybe the glibc version might be useful info: $ rpm -q glibc glibc-2.12-1.212.el6_10.3.x86_64 gdb uses: GNULIB_COMMIT_SHA1="776af40e09b476a41073131a90022572f448c189" In the gcc -E output, I see that the gnulib cdefs.h replacement is not being used -- I only see references like: # 1 "/usr/include/sys/cdefs.h" 1 3 4 That defines __THROW: #define __THROW __attribute__ ((__nothrow__)) ... but not __THROWNL. I've appended a patch (relative to the gdb import) that works. I don't know the correct fix here. I'd appreciate any advice. thanks, Tom diff --git a/gnulib/import/libc-config.h b/gnulib/import/libc-config.h index e3571ee4c94..44c3d0f50fc 100644 --- a/gnulib/import/libc-config.h +++ b/gnulib/import/libc-config.h @@ -189,3 +189,7 @@ #define SHLIB_COMPAT(lib, introduced, obsoleted) 0 #define compat_symbol(lib, local, symbol, version) extern int dummy #define versioned_symbol(lib, local, symbol, version) extern int dummy + +#ifndef __THROWNL +#define __THROWNL __THROW +#endif