a6c3e6
diff -rup ustr-1.0.4-orig/ustr-compiler.h ustr-1.0.4/ustr-compiler.h
a6c3e6
--- ustr-1.0.4-orig/ustr-compiler.h	2008-02-15 15:12:28.000000000 -0500
a6c3e6
+++ ustr-1.0.4/ustr-compiler.h	2008-06-13 15:25:18.000000000 -0400
a6c3e6
@@ -113,17 +113,23 @@
a6c3e6
 #endif
a6c3e6
 
a6c3e6
 #ifndef USTR_CONF_EI_PROTO /* external inline */
a6c3e6
-# if USTR_CONF_INCLUDE_CODEONLY_HEADERS
a6c3e6
+# if USTR_CONF_INCLUDE_CODEONLY_HEADERS || ! defined(__GNUC__) || \
a6c3e6
+     ! USTR_CONF_COMPILE_USE_INLINE
a6c3e6
 #  define USTR_CONF_EI_PROTO static USTR__INLINE
a6c3e6
 # else
a6c3e6
 #  define USTR_CONF_EI_PROTO extern
a6c3e6
 # endif
a6c3e6
 #endif
a6c3e6
 #ifndef USTR_CONF_II_PROTO /* implementation of inline */
a6c3e6
-# if USTR_CONF_INCLUDE_CODEONLY_HEADERS
a6c3e6
+# if USTR_CONF_INCLUDE_CODEONLY_HEADERS || ! defined(__GNUC__) || \
a6c3e6
+     ! USTR_CONF_COMPILE_USE_INLINE
a6c3e6
 #  define USTR_CONF_II_PROTO static USTR__INLINE
a6c3e6
 # else
a6c3e6
-#  define USTR_CONF_II_PROTO extern inline
a6c3e6
+#  if defined(__GNUC_STDC_INLINE__) || defined(__GNUC_GNU_INLINE__)
a6c3e6
+#   define USTR_CONF_II_PROTO extern inline __attribute__ ((__gnu_inline__))
a6c3e6
+#  else
a6c3e6
+#   define USTR_CONF_II_PROTO extern inline
a6c3e6
+#  endif
a6c3e6
 # endif
a6c3e6
 #endif
a6c3e6