[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: