summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp
diff options
context:
space:
mode:
authorAngel Garcia Gomez <angelgarcia@google.com>2015-09-24 17:02:19 +0000
committerAngel Garcia Gomez <angelgarcia@google.com>2015-09-24 17:02:19 +0000
commit8535c6c278b3c54bf6dfa8afbf9d3c0ff63f5bec (patch)
tree70ace4add2407f4cbab66b672b96fd90d1e7cee1 /clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp
parent0da2e9334551dcccfe40786769fbb7e6f52f6da3 (diff)
downloadbcm5719-llvm-8535c6c278b3c54bf6dfa8afbf9d3c0ff63f5bec.tar.gz
bcm5719-llvm-8535c6c278b3c54bf6dfa8afbf9d3c0ff63f5bec.zip
Add NamingStyle option to modernize-loop-convert.
Summary: Add an option to specify wich style must be followed when choosing the new index name. Reviewers: alexfh Subscribers: cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D13052 llvm-svn: 248517
Diffstat (limited to 'clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp')
-rw-r--r--clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp b/clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp
new file mode 100644
index 00000000000..c58ae160c19
--- /dev/null
+++ b/clang-tools-extra/test/clang-tidy/modernize-loop-convert-uppercase.cpp
@@ -0,0 +1,77 @@
+// RUN: %python %S/check_clang_tidy.py %s modernize-loop-convert %t \
+// RUN: -config="{CheckOptions: [{key: modernize-loop-convert.NamingStyle, value: 'UPPER_CASE'}]}" \
+// RUN: -- -std=c++11 -I %S/Inputs/modernize-loop-convert
+
+#include "structures.h"
+
+const int N = 10;
+int ARR[N];
+int NUMS[N];
+
+void naming() {
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", ARR[I]);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead [modernize-loop-convert]
+ // CHECK-FIXES: for (auto & ELEM : ARR)
+ // CHECK-FIXES-NEXT: printf("%d\n", ELEM);
+
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I]);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & NUM : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", NUM);
+
+ int NUM = 0;
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I] + NUM);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & ELEM : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", ELEM + NUM);
+
+ int ELEM = 0;
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I] + NUM + ELEM);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & NUMS_I : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", NUMS_I + NUM + ELEM);
+
+ int NUMS_I = 0;
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I] + NUM + ELEM + NUMS_I);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & NUMS_ELEM : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", NUMS_ELEM + NUM + ELEM + NUMS_I);
+
+ int NUMS_ELEM = 0;
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I] + NUM + ELEM + NUMS_I + NUMS_ELEM);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & GIVE_ME_NAME_0 : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", GIVE_ME_NAME_0 + NUM + ELEM + NUMS_I + NUMS_ELEM);
+
+ int GIVE_ME_NAME_0 = 0;
+ for (int I = 0; I < N; ++I) {
+ printf("%d\n", NUMS[I] + NUM + ELEM + NUMS_I + NUMS_ELEM + GIVE_ME_NAME_0);
+ }
+ // CHECK-MESSAGES: :[[@LINE-3]]:3: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & GIVE_ME_NAME_1 : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", GIVE_ME_NAME_1 + NUM + ELEM + NUMS_I + NUMS_ELEM + GIVE_ME_NAME_0);
+
+ int NUMS_J = 0;
+ for (int I = 0; I < N; ++I) {
+ for (int J = 0; J < N; ++J) {
+ printf("%d\n", NUMS[I] + NUMS[J] + NUM + ELEM + NUMS_I + NUMS_J + NUMS_ELEM);
+ }
+ }
+ // CHECK-MESSAGES: :[[@LINE-5]]:3: warning: use range-based for loop instead
+ // CHECK-MESSAGES: :[[@LINE-5]]:5: warning: use range-based for loop instead
+ // CHECK-FIXES: for (auto & GIVE_ME_NAME_0 : NUMS)
+ // CHECK-FIXES: for (auto & GIVE_ME_NAME_1 : NUMS)
+ // CHECK-FIXES-NEXT: printf("%d\n", GIVE_ME_NAME_0 + GIVE_ME_NAME_1 + NUM + ELEM + NUMS_I + NUMS_J + NUMS_ELEM);
+}
OpenPOWER on IntegriCloud