https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122422
Nathaniel Shead <nshead at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |nshead at gcc dot gnu.org
--- Comment #2 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
This hits the checking assertion added in r16-1759-g98fd493db6216c:
if (TREE_CODE (decl) == TEMPLATE_DECL)
{
inner = DECL_TEMPLATE_RESULT (decl);
inner_tag = insert (inner, WK_value);
/* On stream-in we assume that a template and its result will
have the same type. */
gcc_checking_assert (TREE_TYPE (decl) == TREE_TYPE (inner));
Looks like the decl type is unsized but the inner type has deduced the size
from the initializer. I think we'll need to propagate the deduced array size
from inner to the template-decl once we determine it (like what we do with the
type of 'auto' declarations).