aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h')
-rw-r--r--src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h25
1 files changed, 21 insertions, 4 deletions
diff --git a/src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h b/src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h
index 5c24b2ee3cf..7a3b2e0f3bb 100644
--- a/src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h
+++ b/src/libs/3rdparty/cplusplus/CPlusPlusForwardDeclarations.h
@@ -24,9 +24,28 @@
#include <cstdlib>
#include <cstddef>
-#ifndef CPLUSPLUS_WITHOUT_QT
+#ifdef CPLUSPLUS_WITHOUT_QT
+# ifndef CPLUSPLUS_UNLIKELY
+# ifdef __GNUC__
+# define CPLUSPLUS_UNLIKELY(expr) __builtin_expect(!!(expr), false)
+# else
+# define CPLUSPLUS_UNLIKELY(expr) (expr)
+# endif
+# endif
+# define CPLUSPLUS_EXPORT
+#else
# include <qglobal.h>
-
+# ifndef CPLUSPLUS_UNLIKELY
+# ifdef Q_UNLIKELY
+# define CPLUSPLUS_UNLIKELY(expr) Q_UNLIKELY(expr)
+# else // pre 4.8.something
+# ifdef __GCC__
+# define CPLUSPLUS_UNLIKELY(expr) __builtin_expect(!!(expr), false)
+# else
+# define CPLUSPLUS_UNLIKELY(expr) (expr)
+# endif
+# endif
+# endif
# if defined(CPLUSPLUS_BUILD_LIB)
# define CPLUSPLUS_EXPORT Q_DECL_EXPORT
# elif defined(CPLUSPLUS_BUILD_STATIC_LIB)
@@ -34,8 +53,6 @@
# else
# define CPLUSPLUS_EXPORT Q_DECL_IMPORT
# endif
-#else
-# define CPLUSPLUS_EXPORT
#endif
namespace CPlusPlus {