https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88164

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
For test, clang rejects it with:
<source>:15:18: error: variable 'a' cannot be implicitly captured in a lambda
with no capture-default specified
        return f(a); // Unexpected: does not call the copy constructor, 
                 ^
<source>:13:17: note: 'a' declared here
    constexpr A a{};
                ^
<source>:14:19: note: lambda expression begins here
    auto lambda = []{
                  ^
<source>:14:20: note: capture 'a' by value
    auto lambda = []{
                   ^
                   a
<source>:14:20: note: capture 'a' by reference
    auto lambda = []{
                   ^
                   &a
<source>:14:20: note: default capture by value
    auto lambda = []{
                   ^
                   =
<source>:14:20: note: default capture by reference
    auto lambda = []{
                   ^
                   &

Reply via email to