================
@@ -0,0 +1,181 @@
+// RUN: %check_clang_tidy %s misc-scope-reduction %t -- --
+
+// Test case 1: Variable can be moved to smaller scope (if-block)
+void test_if_scope() {
+ int x = 42; // CHECK-MESSAGES: :[[@LINE]]:7: warning: variable 'x' can be
declared in a smaller scope
+ if (true) {
+ int y = x + 1;
+ }
+}
+
+// Test case 2: Variable used across multiple scopes - should NOT warn
+int test_multiple_scopes(int v) {
+ int y = 0; // Should NOT warn - used in if-block and return
+ if (v) {
+ y = 10;
+ }
+ return y;
+}
+
+// Test case 3: Variable can be moved to nested if-block
+void test_nested_if() {
+ int a = 5; // CHECK-MESSAGES: :[[@LINE]]:7: warning: variable 'a' can be
declared in a smaller scope
+ if (true) {
+ if (true) {
+ int b = a * 2;
+ }
+ }
+}
+
+// Test case 4: Variable used in same scope - should NOT warn
+void test_same_scope() {
+ int x = 10; // Should NOT warn - used in same scope
+ int y = x + 5;
+}
+
+// Test case 5: Variable can be moved to while loop body
+void test_while_loop() {
+ int counter = 0; // CHECK-MESSAGES: :[[@LINE]]:7: warning: variable
'counter' can be declared in a smaller scope
----------------
vabridgers wrote:
Yes, will do. Thank you
https://github.com/llvm/llvm-project/pull/175429
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits