https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123329
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[13/14/15/16 regression] |[13/14/15/16 regression]
|ICE: unexpected expression |ICE: unexpected expression
|'T' of kind |'T' of kind
|template_parm_index |template_parm_index since
| |r13-4761
CC| |jakub at gcc dot gnu.org,
| |ppalka at gcc dot gnu.org
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
template <int N>
struct A { static int foo (int x); };
template <int N>
void
bar ()
{
for (int i = 0; i < N; ++i)
A <N - i>::foo (i);
}
void
baz ()
{
bar <10> ();
}
Started with r13-4761-g982629bea416df976686467f235e09cb1a5531cc
N - i since that change is non_dep since that change, but contains
TEMPLATE_PARM_INDEX and constexpr.cc is unprepared to deal with that (and with
-fchecking results in ICE, without it just says it is non-constant).