(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
cpp0x/
lambda/
lambda-ice2.C
// PR c++/42083
// { dg-do compile { target c++11 } }

template<typename F>
decltype(F()) run(F f) // { dg-message "note" "" { target c++17_down } }
{
  return f();	// { dg-error "could not convert" "" { target c++2a } }
}

int main()
{
  auto l = []() { return 5; }; // { dg-message "lambda closure type" "" { target c++17_down } }

  run(l); // { dg-error "no match" "" { target c++17_down } }
  // { dg-error "use of deleted function" "candidate explanation" { target c++17_down } 5 }
}