https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82546
Bug ID: 82546 Summary: tree_size handling for TYPE nodes is confused Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: nathan at gcc dot gnu.org Target Milestone: --- In working on the modules branch I discovered TYPE node size determination is messed up. tree_code_size returns sizeof (tree_type_non_common) for all tcc_type nodes. Not even asking the lang hook for lang extension types. 1) I don't know whether some core types are smaller 2) some lang hooks don't return sizes for types 3) some lang hooks return too-small-a size 4) some langs don't correctly mark the hierarchy matrix -- how GC is working here I'm not sure. We may be lucking out with nodes being reachable via other ways? 5) All our nice tree_type_common, tree_type_with_lang_specific and tree_type_non_common size optimization is not being used.