2 // { dg-do compile { target c++20 } }
5 constexpr S () : s (0) {}
6 consteval int foo () { return 1; }
7 virtual consteval int bar () { return 2; }
10 typedef int (S::*P) ();
28 return (s.*(foo ())) () + (s.*(bar ())) ();
31 static_assert (baz () == 3);
33 constexpr P a = foo (); // { dg-error "immediate evaluation returns address of immediate function" }
34 constexpr P b = bar (); // { dg-error "immediate evaluation returns address of immediate function" }