[clang-tools-extra] [clang-tidy] Teach `readability-uppercase-literal-suffix` about C++23 and C23 suffixes (PR #148275)
Baranov Victor via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 26 06:03:44 PDT 2025
================
@@ -0,0 +1,162 @@
+// TODO: When Clang adds support for decimal floating point types, enable these tests by:
+// 1. Removing all the #if 0 + #endif guards.
+// 2. Removing all occurrences of the string "DISABLED-" in this file.
+// 3. Deleting this message.
+
+// RUN: %check_clang_tidy -std=c23-or-later %s readability-uppercase-literal-suffix %t
+// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.c
+// RUN: clang-tidy %t.c -checks='-*,readability-uppercase-literal-suffix' -fix -- -std=c23
+// RUN: clang-tidy %t.c -checks='-*,readability-uppercase-literal-suffix' -warnings-as-errors='-*,readability-uppercase-literal-suffix' -- -std=c23
+
+void bit_precise_literal_suffix() {
+ // _BitInt()
+
+ static constexpr auto v1 = 1wb;
+ // CHECK-MESSAGES: :[[@LINE-1]]:30: warning: integer literal has suffix 'wb', which is not uppercase
+ // CHECK-MESSAGES-NEXT: static constexpr auto v1 = 1wb;
+ // CHECK-MESSAGES-NEXT: ^~~
+ // CHECK-MESSAGES-NEXT: WB{{$}}
----------------
vbvictor wrote:
Do we need these messages? I haven't seen them in other tests and they look obsolete (considering we have CHECK-FIXES).
https://github.com/llvm/llvm-project/pull/148275
More information about the cfe-commits
mailing list