https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97468
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-valid-code --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- #1 0x00000000016e9d82 in layout_type ( type=<template_type_parm 0x7ffff696adc8 auto>) at /home/rguenther/src/gcc2/gcc/stor-layout.c:2618 but of course calling layout_type from type_hash_canon is quite fishy as we'll end up layouting a template_type_parm here ... now, feeding this to type_hash_canon is fishy as well so the FE should probably not call any of the attribute handlers on those ... tree type_hash_canon (unsigned int hashcode, tree type) { type_hash in; type_hash **loc; /* The hash table only contains main variants, so ensure that's what we're being passed. */ gcc_assert (TYPE_MAIN_VARIANT (type) == type); /* The TYPE_ALIGN field of a type is set by layout_type(), so we must call that routine before comparing TYPE_ALIGNs. */ layout_type (type);