do not use PURE before gcc 3.3.3
authorEnrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Wed, 24 Mar 2004 01:03:28 +0000 (01:03 +0000)
committerEnrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
Wed, 24 Mar 2004 01:03:28 +0000 (01:03 +0000)
use a more effective way to determine gcc revision

git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@1319 94cd875c-1c1d-0410-91d2-eb244daf1a30

util-vserver/compat.h

index 08dfe05..7f9cd9d 100644 (file)
 #  define UNUSED                __attribute__((__unused__))
 #  define NORETURN              __attribute__((__noreturn__))
 #  define CONST                        __attribute__((__const__))
-#  if __GNUC__>3 || (__GNUC__==3 && __GNUC_MINOR__>=3)
+#  if __GNUC__*0x10000 + __GNUC_MINOR__*0x100 + __GNUC_PATCHLEVEL__ >= 0x30300
 #    define NONNULL(ARGS)      __attribute__((__nonnull__ ARGS))
 #    define ALWAYSINLINE        __attribute__((__always_inline__))
 #  else
 #    define NONNULL(ARGS)
 #    define ALWAYSINLINE
+#    define PURE
 #  endif
-#  if __GNUC__>=3
-#    define PURE                       __attribute__((__pure__))
+#  if __GNUC__*0x10000 + __GNUC_MINOR__*0x100 + __GNUC_PATCHLEVEL__ >= 0x30303
+#    define PURE               __attribute__((__pure__))
 #  else
 #    define PURE
 #  endif