blob: dc229a19dd953eda02433bede29ba97fd5325339 [file] [log] [blame]
Edwin Vane31896622013-01-08 14:36:29 +00001// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp
2// RUN: cpp11-migrate -loop-convert %t.cpp -- -I %S/Inputs
3// RUN: FileCheck -input-file=%t.cpp %s
4// RUN: cpp11-migrate -loop-convert %t.cpp -risk=risky -- -I %S/Inputs
5// RUN: FileCheck -check-prefix=RISKY -input-file=%t.cpp %s
6
7#include "structures.h"
8
9void f() {
10 const int N = 5;
11 const int M = 7;
12 int (*pArr)[N];
13 int Arr[N][M];
14 int sum = 0;
15
16 for (int i = 0; i < M; ++i) {
17 sum += Arr[0][i];
18 }
19 // CHECK: for (int i = 0; i < M; ++i) {
20 // CHECK-NEXT: sum += Arr[0][i];
21 // CHECK-NEXT: }
22 // RISKY: for (auto & [[VAR:[a-z_]+]] : Arr[0]) {
23 // RISKY-NEXT: sum += [[VAR]];
24 // RISKY-NEXT: }
25
26 for (int i = 0; i < N; ++i) {
27 sum += (*pArr)[i];
28 }
29 // RISKY: for (auto & [[VAR:[a-z_]+]] : *pArr) {
30 // RISKY-NEXT: sum += [[VAR]];
31 // RISKY-NEXT: }
32 // CHECK: for (int i = 0; i < N; ++i) {
33 // CHECK-NEXT: sum += (*pArr)[i];
34 // CHECK-NEXT: }
35}