blob: 489286a12d2a592707233965bd6d914b1e77cb59 [file] [log] [blame]
// { dg-do compile }
// { dg-options "-std=c++2a" }
consteval int bar (int i) { if (i != 1) throw 1; return 0; } // { dg-error "is not a constant expression" }
template <int N>
void foo ()
{
int a = bar (N);
}
template <int N>
void qux ()
{
int a = bar (N); // { dg-message "in 'constexpr' expansion of 'bar\\(2\\)'" }
}
template <int N>
void quux ()
{
int a = bar (5); // { dg-message "in 'constexpr' expansion of 'bar\\(5\\)'" }
}
void
baz ()
{
foo<1> ();
qux<2> ();
}
int a = bar (2); // { dg-message "in 'constexpr' expansion of 'bar\\(2\\)'" }