summaryrefslogtreecommitdiffstats
path: root/newlib/libc/include/sys/features.h
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2012-10-16 18:45:24 +0000
committerCorinna Vinschen <corinna@vinschen.de>2012-10-16 18:45:24 +0000
commit5eceb3958ee6cb42d57d4fe52dd76fb03b178edf (patch)
treefcddcedf0dc6b3aab54a8f7e85d619e574aa0e11 /newlib/libc/include/sys/features.h
parent71c13b96338eeb7021c211c1819cba700e85b61c (diff)
downloadcygnal-5eceb3958ee6cb42d57d4fe52dd76fb03b178edf.tar.gz
cygnal-5eceb3958ee6cb42d57d4fe52dd76fb03b178edf.tar.bz2
cygnal-5eceb3958ee6cb42d57d4fe52dd76fb03b178edf.zip
* libc/include/sys/features.h (__GNUC_PREREQ): Define. Use
throughout in place of explicit GNUC version checks. * libc/include/_ansi.h (_NOINLINE): Define. (_NOINLINE_STATIC): Define. * libc/stdio/vfprintf.c (__sbprintf): Define _NOINLINE_STATIC.
Diffstat (limited to 'newlib/libc/include/sys/features.h')
-rw-r--r--newlib/libc/include/sys/features.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h
index e7f9c65dd..f150706db 100644
--- a/newlib/libc/include/sys/features.h
+++ b/newlib/libc/include/sys/features.h
@@ -25,6 +25,16 @@
extern "C" {
#endif
+/* Macro to test version of GCC. Returns 0 for non-GCC or too old GCC. */
+#ifndef __GNUC_PREREQ
+# if defined __GNUC__ && defined __GNUC_MINOR__
+# define __GNUC_PREREQ(maj, min) \
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
+# else
+# define __GNUC_PREREQ(maj, min) 0
+# endif
+#endif /* __GNUC_PREREQ */
+
/* RTEMS adheres to POSIX -- 1003.1b with some features from annexes. */
#ifdef __rtems__