summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/cpp11-migrate/LoopConvert/confidence.cpp
blob: dc229a19dd953eda02433bede29ba97fd5325339 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp
// RUN: cpp11-migrate -loop-convert %t.cpp -- -I %S/Inputs
// RUN: FileCheck -input-file=%t.cpp %s
// RUN: cpp11-migrate -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 & [[VAR:[a-z_]+]] : Arr[0]) {
  // RISKY-NEXT: sum += [[VAR]];
  // RISKY-NEXT: }

  for (int i = 0; i < N; ++i) {
    sum += (*pArr)[i];
  }
  // RISKY: for (auto & [[VAR:[a-z_]+]] : *pArr) {
  // RISKY-NEXT: sum += [[VAR]];
  // RISKY-NEXT: }
  // CHECK: for (int i = 0; i < N; ++i) {
  // CHECK-NEXT: sum += (*pArr)[i];
  // CHECK-NEXT: }
}
OpenPOWER on IntegriCloud