summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ldso/ldso/sh/dl-syscalls.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/ldso/ldso/sh/dl-syscalls.h b/ldso/ldso/sh/dl-syscalls.h
index 7902f362d..d3672512f 100644
--- a/ldso/ldso/sh/dl-syscalls.h
+++ b/ldso/ldso/sh/dl-syscalls.h
@@ -4,8 +4,11 @@
extern int _dl_errno;
#undef __set_errno
#define __set_errno(X) {(_dl_errno) = (X);}
-#warning !!! __always_inline redefined waiting for the fixed gcc
-#ifdef __always_inline
-#undef __always_inline
-#define __always_inline inline
+
+#if __GNUC_PREREQ (4, 1)
+#warning !!! gcc 4.1 and later have problems with __always_inline so redefined as inline
+# ifdef __always_inline
+# undef __always_inline
+# define __always_inline inline
+# endif
#endif