Bug#647084: #define __attribute__ in argp.h seems to be the culprit
Today I tried this on CentOS and Fedora Core and the bug appeared
there too, so this is definitely an upstream issue.
I think I found the real issue; in /usr/include/argp.h line 46:
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__
# define __attribute__(Spec) /* empty */
# endif
When compiled with -std=c99, __STRICT_ANSI__ gets defined, and all the
__attribute__ declarations are thrown out... including the
__attribute__((gnu_inline)) from the strcpy definition, which is
required according to the GCC devs.
A similar #ifdef exists in /usr/include/autosprintf.h line 24, though
it's a C++ header and I don't know if __STRICT_ANSI__ ever gets
defined there.
Reply to: