36 lines
896 B
C++
36 lines
896 B
C++
// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp
|
|
// RUN: clang-modernize -loop-convert %t.cpp -- -I %S/Inputs
|
|
// RUN: FileCheck -input-file=%t.cpp %s
|
|
// RUN: clang-modernize -loop-convert %t.cpp -risk=risky -- -I %S/Inputs
|
|
// RUN: FileCheck -check-prefix=RISKY -input-file=%t.cpp %s
|
|
|
|
#include "structures.h"
|
|
|
|
void f() {
|
|
const int N = 5;
|
|
const int M = 7;
|
|
int (*pArr)[N];
|
|
int Arr[N][M];
|
|
int sum = 0;
|
|
|
|
for (int i = 0; i < M; ++i) {
|
|
sum += Arr[0][i];
|
|
}
|
|
// CHECK: for (int i = 0; i < M; ++i) {
|
|
// CHECK-NEXT: sum += Arr[0][i];
|
|
// CHECK-NEXT: }
|
|
// RISKY: for (auto & elem : Arr[0]) {
|
|
// RISKY-NEXT: sum += elem;
|
|
// RISKY-NEXT: }
|
|
|
|
for (int i = 0; i < N; ++i) {
|
|
sum += (*pArr)[i];
|
|
}
|
|
// RISKY: for (auto & elem : *pArr) {
|
|
// RISKY-NEXT: sum += elem;
|
|
// RISKY-NEXT: }
|
|
// CHECK: for (int i = 0; i < N; ++i) {
|
|
// CHECK-NEXT: sum += (*pArr)[i];
|
|
// CHECK-NEXT: }
|
|
}
|