comparison gcc/testsuite/g++.dg/cpp0x/pr86610.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
1 // { dg-do run { target c++11 } }
2 // PR c++86610 lambda capture inside template
3
4 struct C
5 {
6 int operator[](int)
7 { return 1; }
8
9 int operator[](int) const
10 { return 0; } // Want this one
11 };
12
13 int q()
14 {
15 C c;
16 return [=] { return c[0]; }();
17 }
18
19 template <typename T>
20 int f()
21 {
22 C c;
23 T d;
24 return [=] { return c[0]; }()
25 + [=] { return c[0] + d[0]; }();
26 }
27
28 int main()
29 {
30 return q () + f<C>();
31 }