From be6480834246f502a74cca8cbe69b06878497a1a Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Thu, 18 Jan 2024 09:06:59 +0100 Subject: [PATCH] QMetaTypeModuleHelper: suppress cppcoreguidelines-virtual-class-destructor Says clang-tidy: destructor of '(unnamed struct at qmetatype.cpp:966:14)' is public and non-virtual in file:src/corelib/kernel/qmetatype.cpp line:966 col:14 static const struct : QMetaTypeModuleHelper Yes, these classes are polymorphic (because the base class is). Yes, the destructor is non-virtual (because the base class' one isn't, but it's also protected, so fine). But these classes are not used as base classes, so suppress the warning. Pick-to: 6.5 6.2 Change-Id: I75be86bca36a4a0e93d72acb1a0d2fe0dca1c505 Reviewed-by: Fabian Kosmale (cherry picked from commit 11d153ae1ce3ce75e76a1fcac7bf99e4cff05716) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit 256ac3994395e308337b5c6ef03a8191ae3690fc) --- src/corelib/kernel/qmetatype.cpp | 1 + src/gui/kernel/qguivariant.cpp | 1 + src/widgets/kernel/qwidgetsvariant.cpp | 1 + 3 files changed, 3 insertions(+) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 5f42bc00cb3..78996db8115 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -954,6 +954,7 @@ static const struct { const char * typeName; int typeNameLength; int type; } typ {nullptr, 0, QMetaType::UnknownType} }; +// NOLINTNEXTLINE(cppcoreguidelines-virtual-class-destructor): this is not a base class static const struct : QMetaTypeModuleHelper { template