From d8daa4fe5f070a9ff26a1a75b1ad05fe5aa7a09b Mon Sep 17 00:00:00 2001 From: Octol1ttle Date: Wed, 25 Feb 2026 12:21:51 +0500 Subject: [PATCH 1/3] Update .clang-tidy configuration file Enables most of checks provided by clang-tidy, with checks that do not fit us excluded. The table containing naming conventions was using wrong values, that was fixed and now tidy correctly warns and fixes naming convention issues Signed-off-by: Octol1ttle (cherry picked from commit e8d0163aa4cc0b92a73acd55d9379a6bdf1c547f) --- .clang-tidy | 49 +++++++++++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/.clang-tidy b/.clang-tidy index 6c489fb50..a2fec8dd6 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -1,23 +1,32 @@ -Checks: - - modernize-use-using - - readability-avoid-const-params-in-decls - - misc-unused-parameters, - - readability-identifier-naming +FormatStyle: file -# ^ Without unused-parameters the readability-identifier-naming check doesn't cause any warnings. +Checks: + 'bugprone-*,clang-analyzer-*,cppcoreguidelines-*,hicpp-*,misc-*,modernize-*,performance-*,portability-*,readability-*, + -*-magic-numbers, + -*-non-private-member-variables-in-classes, + -*-special-member-functions, + -bugprone-easily-swappable-parameters, + -cppcoreguidelines-owning-memory, + -cppcoreguidelines-pro-type-static-cast-downcast, + -modernize-use-nodiscard, + -modernize-use-trailing-return-type, + -portability-avoid-pragma-once, + -readability-avoid-unconditional-preprocessor-if, + -readability-function-cognitive-complexity, + -readability-identifier-length, + -readability-redundant-access-specifiers' CheckOptions: - - { key: readability-identifier-naming.ClassCase, value: PascalCase } - - { key: readability-identifier-naming.EnumCase, value: PascalCase } - - { key: readability-identifier-naming.FunctionCase, value: camelCase } - - { key: readability-identifier-naming.GlobalVariableCase, value: camelCase } - - { key: readability-identifier-naming.GlobalFunctionCase, value: camelCase } - - { key: readability-identifier-naming.GlobalConstantCase, value: SCREAMING_SNAKE_CASE } - - { key: readability-identifier-naming.MacroDefinitionCase, value: SCREAMING_SNAKE_CASE } - - { key: readability-identifier-naming.ClassMemberCase, value: camelCase } - - { key: readability-identifier-naming.PrivateMemberPrefix, value: m_ } - - { key: readability-identifier-naming.ProtectedMemberPrefix, value: m_ } - - { key: readability-identifier-naming.PrivateStaticMemberPrefix, value: s_ } - - { key: readability-identifier-naming.ProtectedStaticMemberPrefix, value: s_ } - - { key: readability-identifier-naming.PublicStaticConstantCase, value: SCREAMING_SNAKE_CASE } - - { key: readability-identifier-naming.EnumConstantCase, value: PascalCase } + - { key: misc-include-cleaner.MissingIncludes, value: false } + - { key: readability-identifier-naming.DefaultCase, value: camelBack } + - { key: readability-identifier-naming.NamespaceCase, value: CamelCase } + - { key: readability-identifier-naming.ClassCase, value: CamelCase } + - { key: readability-identifier-naming.ClassConstantCase, value: CamelCase } + - { key: readability-identifier-naming.EnumCase, value: CamelCase } + - { key: readability-identifier-naming.EnumConstantCase, value: CamelCase } + - { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE } + - { key: readability-identifier-naming.ClassMemberPrefix, value: m_ } + - { key: readability-identifier-naming.StaticConstantPrefix, value: s_ } + - { key: readability-identifier-naming.StaticVariablePrefix, value: s_ } + - { key: readability-identifier-naming.GlobalConstantPrefix, value: g_ } + - { key: readability-implicit-bool-conversion.AllowPointerConditions, value: true } From a09ad02150e8fba5574298d8d41417b2525126f3 Mon Sep 17 00:00:00 2001 From: Octol1ttle Date: Wed, 25 Feb 2026 12:22:07 +0500 Subject: [PATCH 2/3] .clang-format: explicitly specify qualifier alignment Signed-off-by: Octol1ttle (cherry picked from commit 1486e40f145d4647cb68308e0dd05cefcadfc784) --- .clang-format | 1 + 1 file changed, 1 insertion(+) diff --git a/.clang-format b/.clang-format index a0b93351f..005a1006b 100644 --- a/.clang-format +++ b/.clang-format @@ -16,3 +16,4 @@ BraceWrapping: BreakBeforeBraces: Custom BreakConstructorInitializers: BeforeComma Cpp11BracedListStyle: false +QualifierAlignment: Left From 139da311ff08f0a5df05a64dbdec14395c7afc51 Mon Sep 17 00:00:00 2001 From: Octol1ttle Date: Wed, 25 Feb 2026 12:31:31 +0500 Subject: [PATCH 3/3] run clang-format to apply new qualifier alignment Signed-off-by: Octol1ttle (cherry picked from commit dde1d21cbc90192e23ae002c2cee45298599cc0e) --- launcher/Application.cpp | 2 +- launcher/Application.h | 2 +- launcher/InstanceList.cpp | 6 +++--- launcher/Version.h | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/launcher/Application.cpp b/launcher/Application.cpp index 1daf3f01c..07797d4f2 100644 --- a/launcher/Application.cpp +++ b/launcher/Application.cpp @@ -2005,7 +2005,7 @@ void Application::triggerUpdateCheck() } } -QUrl Application::normalizeImportUrl(QString const& url) +QUrl Application::normalizeImportUrl(const QString& url) { auto local_file = QFileInfo(url); if (local_file.exists()) { diff --git a/launcher/Application.h b/launcher/Application.h index b7ef77afd..3811c4188 100644 --- a/launcher/Application.h +++ b/launcher/Application.h @@ -200,7 +200,7 @@ class Application : public QApplication { bool updaterEnabled(); QString updaterBinaryName(); - QUrl normalizeImportUrl(QString const& url); + QUrl normalizeImportUrl(const QString& url); signals: void updateAllowedChanged(bool status); diff --git a/launcher/InstanceList.cpp b/launcher/InstanceList.cpp index 98b420c31..c4ac3027f 100644 --- a/launcher/InstanceList.cpp +++ b/launcher/InstanceList.cpp @@ -565,7 +565,7 @@ InstanceList::InstListError InstanceList::loadList() void InstanceList::updateTotalPlayTime() { totalPlayTime = 0; - for (auto const& itr : m_instances) { + for (const auto& itr : m_instances) { totalPlayTime += itr->totalTimePlayed(); } } @@ -1033,9 +1033,9 @@ QString InstanceList::getStagedInstancePath() } bool InstanceList::commitStagedInstance(const QString& path, - InstanceName const& instanceName, + const InstanceName& instanceName, QString groupName, - InstanceTask const& commiting) + const InstanceTask& commiting) { if (groupName.isEmpty() && !groupName.isNull()) groupName = QString(); diff --git a/launcher/Version.h b/launcher/Version.h index 4b5ea7119..9933fecc3 100644 --- a/launcher/Version.h +++ b/launcher/Version.h @@ -115,7 +115,7 @@ class Version { inline bool operator<(const Section& other) const { - static auto unequal_is_less = [](Section const& non_null) -> bool { + static auto unequal_is_less = [](const Section& non_null) -> bool { if (non_null.m_stringPart.isEmpty()) return non_null.m_numPart == 0; return (non_null.m_stringPart != QLatin1Char('.')) && non_null.isPreRelease();