summaryrefslogtreecommitdiff
path: root/src/localconsts.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/localconsts.h')
-rw-r--r--src/localconsts.h20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/localconsts.h b/src/localconsts.h
index b76fe233f..00108b5eb 100644
--- a/src/localconsts.h
+++ b/src/localconsts.h
@@ -118,14 +118,24 @@
#endif // __clang__
#endif // __native_client__
-#ifndef ENABLE_CILKPLUS
-#define A_CONST __attribute__ ((const))
-#define A_PURE __attribute__ ((pure))
-#define A_INLINE __attribute__ ((always_inline))
-#else // ENABLE_CILKPLUS
+#ifdef ENABLE_CILKPLUS
+#ifdef __GNUC__
+#if GCC_VERSION < 60000
+#define BAD_CILKPLUS
+#else // GCC_VERSION < 60000
+#define GOOD_CILKPLUS
+#endif // GCC_VERSION < 60000
+#endif // __GNUC__
+#endif // ENABLE_CILKPLUS
+
+#if defined(ENABLE_CILKPLUS) && defined(BAD_CILKPLUS)
#define A_CONST
#define A_PURE
#define A_INLINE
+#else // ENABLE_CILKPLUS
+#define A_CONST __attribute__ ((const))
+#define A_PURE __attribute__ ((pure))
+#define A_INLINE __attribute__ ((always_inline))
#endif // ENABLE_CILKPLUS
#ifdef __INTEL_COMPILER