aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda22.C
blob: fcb6ff96d588a4c2eda6e31b791b009b0509e491 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// { dg-do compile }
// { dg-options -std=c++17 }

#define SA(X) static_assert((X),#X)

template<typename>
constexpr int
foo ()
{
  constexpr int a[] = { 1, 2, 3, 4, 5 };
  int i = 0;
  auto j = [&] {
    for (auto x : a)
      i++;
    return i;
  }();
  return j;
}

SA (foo<int>() == 5);