From 8fe6f14bf025a4f0b4f8c6c6133d54652e1b3b4e Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Fri, 24 May 2019 09:29:46 +0200 Subject: [PATCH] QBasicTimer: add some noexcept and constexpr The noexcept part should be clear. The constexpr should make the compiler not create initialization code for static instances. This is how std::mutex works[1], and Clang and GCC understand it. MSVC doesn't. [1] https://en.cppreference.com/w/cpp/thread/mutex/mutex Change-Id: If9e4c6c0279f0024a659d5602d55e126224ca950 Reviewed-by: Giuseppe D'Angelo --- src/corelib/kernel/qbasictimer.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/corelib/kernel/qbasictimer.h b/src/corelib/kernel/qbasictimer.h index d3491b247b..769898f835 100644 --- a/src/corelib/kernel/qbasictimer.h +++ b/src/corelib/kernel/qbasictimer.h @@ -63,7 +63,7 @@ public: #endif public: - inline QBasicTimer() : id(0) {} + constexpr QBasicTimer() noexcept : id{0} {} inline ~QBasicTimer() { if (id) stop(); } QBasicTimer(QBasicTimer &&other) noexcept @@ -78,8 +78,8 @@ public: void swap(QBasicTimer &other) noexcept { qSwap(id, other.id); } - inline bool isActive() const { return id != 0; } - inline int timerId() const { return id; } + bool isActive() const noexcept { return id != 0; } + int timerId() const noexcept { return id; } void start(int msec, QObject *obj); void start(int msec, Qt::TimerType timerType, QObject *obj);