// PR c++/82570 | |
// { dg-do compile { target c++17 } } | |
template< typename Body > | |
inline void iterate(Body body) | |
{ | |
body(10); | |
} | |
template< typename Pred > | |
inline void foo(Pred pred) | |
{ | |
iterate([&](int param) | |
{ | |
if (pred(param)) | |
{ | |
unsigned char buf[4]; | |
buf[0] = 0; | |
buf[1] = 1; | |
buf[2] = 2; | |
buf[3] = 3; | |
} | |
}); | |
} | |
int main() | |
{ | |
foo([](int x) { return x > 0; }); | |
return 0; | |
} |