path: root/src/corelib/kernel/qtimer.h
diff options
authorTor Arne Vestbø <>2019-12-08 23:47:10 +0100
committerTor Arne Vestbø <>2019-12-10 00:48:07 +0100
commitc3bd5ffdc8a3b459f18ba6e35fca93e29f3b0ab0 (patch)
tree24d4c1350b6a08d35396377e83301bda3b4addb4 /src/corelib/kernel/qtimer.h
parent191ac31598ccc9d7c8a2c83730755714f903b7ca (diff)
Don't wrap feature detection macros with QT_HAS_FOO() variants
Using wrappers for these macros is problematic when for example passing the -frewrite-includes flag to preprocess sources before shipping off to distcc or Icecream. It will also start producing warnings when compilers implement See for example Both and the SD-6 document at recommend defining '__has_foo(x) 0' as a fallback for compilers without the macros, so that's what we go for. Change-Id: I0298cd3b4a6ff6618821e34642a5ddd6728be767 Reviewed-by: Alex Richardson <> Reviewed-by: Thiago Macieira <>
Diffstat (limited to 'src/corelib/kernel/qtimer.h')
1 files changed, 3 insertions, 3 deletions
diff --git a/src/corelib/kernel/qtimer.h b/src/corelib/kernel/qtimer.h
index eb7185c12d..6bbfd741d9 100644
--- a/src/corelib/kernel/qtimer.h
+++ b/src/corelib/kernel/qtimer.h
@@ -47,7 +47,7 @@
#include <QtCore/qbasictimer.h> // conceptual inheritance
#include <QtCore/qobject.h>
-#if QT_HAS_INCLUDE(<chrono>)
+#if __has_include(<chrono>)
# include <chrono>
@@ -177,7 +177,7 @@ Q_SIGNALS:
void timeout(QPrivateSignal);
-#if QT_HAS_INCLUDE(<chrono>) || defined(Q_QDOC)
+#if __has_include(<chrono>) || defined(Q_QDOC)
void setInterval(std::chrono::milliseconds value)
@@ -223,7 +223,7 @@ private:
static void singleShotImpl(int msec, Qt::TimerType timerType,
const QObject *receiver, QtPrivate::QSlotObjectBase *slotObj);
-#if QT_HAS_INCLUDE(<chrono>)
+#if __has_include(<chrono>)
static Qt::TimerType defaultTypeFor(std::chrono::milliseconds interval)
{ return defaultTypeFor(int(interval.count())); }