diff options
Diffstat (limited to 'dev-libs/ustr/files/ustr-1.0.4-inline-check.patch')
-rw-r--r-- | dev-libs/ustr/files/ustr-1.0.4-inline-check.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/dev-libs/ustr/files/ustr-1.0.4-inline-check.patch b/dev-libs/ustr/files/ustr-1.0.4-inline-check.patch new file mode 100644 index 000000000000..b38cf7829c9f --- /dev/null +++ b/dev-libs/ustr/files/ustr-1.0.4-inline-check.patch @@ -0,0 +1,27 @@ +--- a/ustr-conf.h.in 2007-10-22 08:00:55.000000000 +0200 ++++ b/ustr-conf.h.in 2015-09-10 12:24:34.998796842 +0200 +@@ -4,13 +4,23 @@ + /* this is the custom version for the library itself, for everyone else + * ustr-import generates one depending on the options. */ + ++/* Ustr relies on GCC's traditional handling of inline functions, not ++ * the version that was actually standardized in C99. GCC-compatible ++ * compilers define __GNUC_STDC_INLINE__ when using the standard ++ * behavior. When this is set we must restore the old inline behavior: ++ */ ++#if defined(__GNUC__) \ ++ && defined(__GNUC_STDC_INLINE__) ++# define inline inline __attribute__ ((gnu_inline)) ++#endif ++ + /* The default is now to link against libc. */ + #ifndef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 0 + #endif + + /* We can't: if defined(__GLIBC__) && (!defined(_GNU_SOURCE) || !_GNU_SOURCE) +- * because by the time we've included a libc header it's too late. */ ++ * because by the time we've included a libc header it's too late. */ + #ifndef _GNU_SOURCE + #define _GNU_SOURCE 1 + #endif |