https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104107
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Last reconfirmed| |2022-01-19 Status|UNCONFIRMED |NEW --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed, reduced testcase: template<int targ_id, typename t_parameter, template<typename T, T&> typename tt_w_data> struct tt_main { static t_parameter m_parameter; template<template<typename T, T&> typename t_data> using t_make = t_data<int, m_parameter>; using t_data = t_make<tt_w_data>; }; template<typename T, T&> struct P {}; tt_main<0, int, P> a; ---- CUT ---- I don't know why if I remove the unused template argument targ_id, it works.