From eb1cec404e737811471ebe9f4fb53443664f6581 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Fri, 30 Jun 2023 10:20:55 +0200 Subject: [PATCH] QEventLoopLocker: unexport Non-polymorphic classes should not be exported wholesale. Luckily, in this case, all SMFs are either out-of-line or (implicitly or explicitly) deleted, so we don't need to wait for Qt 7 to do the change. This is a prerequisite of adding move semantics to the class, as well as some other optimizations that require non-exported functions. As a drive-by, collapse ctor declarations into single lines, because a follow-up patch will need to touch the original lines, anyway, to add noexcept, so there's no point in keeping separate lines to optimize the API review diffs. Task-number: QTBUG-114793 Change-Id: Iccfcc11d37aa9274e48345a1e01e0f827e465644 Reviewed-by: Fabian Kosmale Reviewed-by: Thiago Macieira (cherry picked from commit 97adda8675dcc9ca380a43d49b6c59fcea734090) Reviewed-by: Qt Cherry-pick Bot --- src/corelib/kernel/qeventloop.h | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/corelib/kernel/qeventloop.h b/src/corelib/kernel/qeventloop.h index 387fcbbeaa4..f68032c1de9 100644 --- a/src/corelib/kernel/qeventloop.h +++ b/src/corelib/kernel/qeventloop.h @@ -51,16 +51,13 @@ Q_DECLARE_OPERATORS_FOR_FLAGS(QEventLoop::ProcessEventsFlags) class QEventLoopLockerPrivate; -class Q_CORE_EXPORT QEventLoopLocker +class QEventLoopLocker { public: - Q_NODISCARD_CTOR - QEventLoopLocker(); - Q_NODISCARD_CTOR - explicit QEventLoopLocker(QEventLoop *loop); - Q_NODISCARD_CTOR - explicit QEventLoopLocker(QThread *thread); - ~QEventLoopLocker(); + Q_NODISCARD_CTOR Q_CORE_EXPORT QEventLoopLocker(); + Q_NODISCARD_CTOR Q_CORE_EXPORT explicit QEventLoopLocker(QEventLoop *loop); + Q_NODISCARD_CTOR Q_CORE_EXPORT explicit QEventLoopLocker(QThread *thread); + Q_CORE_EXPORT ~QEventLoopLocker(); private: Q_DISABLE_COPY(QEventLoopLocker)