https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66668
--- Comment #2 from Aldy Hernandez <aldyh at gcc dot gnu.org> --- Yes, this is a known issue, likely across all architectures. I mentioned this upon merge of the debug-early work: https://gcc.gnu.org/ml/gcc/2015-06/msg00093.html As I discussed in the above post, this is a missed optimization while merging the common denominator of a set of qualifiers for a type within a DIE. For example, if two types share "const volatile" (say "const volatile int" and "const volatile char"), dwarf2out outputs things in the most efficient manner as to share the maximum common type DIEs. This is not working, as TYPE_MAIN_VARIANTs are not complete by the time early dwarf is run. Thanks for opening the PR.