summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/cpp11-migrate/LoopConvert/confidence.cpp
blob: 8c130f165b93fcf2f6c7053eaf0ab5b2da8c8ef8 (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 & 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: }
}
OpenPOWER on IntegriCloud