1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
// PR c++/102629 // { dg-do compile { target c++20 } } template <class T> T&& forward(T&); template <class T> T&& forward(T&&); struct S {}; template <typename... Args> void foo(Args&&... args) { [...args = forward<Args> /*(args)*/] { // { dg-error "14:" } [](auto...) { } (forward<Args>(args)...); }; } void bar( ) { foo(S{}); }