1 // PR c++/64382
2 // { dg-do compile { target c++14 } }
3 
4 template<typename T>
5 struct my_queue
6 {
pushmy_queue7   void push(T)
8   {
9   }
icemy_queue10   void ice()
11   {
12     auto L = [=](auto &&v) { // { dg-warning "implicit capture" "" { target c++2a } }
13       push(v);
14     };
15     trav(L);
16   }
17   template<typename F>
travmy_queue18   void trav(F &&f)
19   {
20     f(T());
21   }
22 };
23 template struct my_queue<int>;
24