1 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++20 %s 2 // expected-no-diagnostics 3 4 // Check that we don't crash due to forgetting to check for placeholders 5 // in the RHS of '.*'. 6 7 template <typename Fn> has_explicitly_named_overload()8static bool has_explicitly_named_overload() { 9 return requires { Fn().*&Fn::operator(); }; 10 } 11 main()12int main() { 13 has_explicitly_named_overload<decltype([](auto){})>(); 14 } 15 16 template <typename Fn> has_explicitly_named_overload_2()17constexpr bool has_explicitly_named_overload_2() { 18 return requires { Fn().*&Fn::operator(); }; 19 } 20 __anon8cd60c130202(auto)21static_assert(!has_explicitly_named_overload_2<decltype([](auto){})>()); 22