Macros __attribute__, __format__ and __printf__ are defined in argp.h for compatibility with ANSI and old gccs. But leaving them effective out of the scope of the header may break applications relying on these compiler attributes even with __STRICT_ANSI__ defined. So undef the macros after using. --- include/argp.h | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/include/argp.h b/include/argp.h index 8e8674296..1824c69d6 100644 --- a/include/argp.h +++ b/include/argp.h @@ -562,4 +562,14 @@ __NTH (__option_is_end (__const struct argp_option *__opt)) } #endif +#ifdef __attribute__ +# if __GNUC__ < 2 ||(__GNUC__ == 2 && __GNUC_MINOR__ < 5) || defined(__STRICT_ANSI__) +# undef __attribute__ +# endif +# if __GNUC__ < 2 ||(__GNUC__ == 2 && __GNUC_MINOR__ < 7) || defined(__STRICT_ANSI__) +# undef __format__ +# undef __printf__ +# endif +#endif + #endif /* argp.h */ -- 2.43.0 _______________________________________________ devel mailing list -- devel@uclibc-ng.org To unsubscribe send an email to devel-le...@uclibc-ng.org