https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99496
--- Comment #14 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Nathan Sidwell <nat...@gcc.gnu.org>: https://gcc.gnu.org/g:7b900dca607dceaae2db372365f682a4979c7826 commit r11-7687-g7b900dca607dceaae2db372365f682a4979c7826 Author: Nathan Sidwell <nat...@acm.org> Date: Mon Mar 15 11:25:46 2021 -0700 c++: Incorrect type equivalence [PR 99496] This bug was caused by not marking dependent template aliases correctly -- these things look like typedefs, but are not (necessarily) equivalent to the canonical type. We need to record that. PR c++/99496 gcc/cp/ * module.cc (trees_out::decl_value): Adjust typedef streaming, indicate whether it is a dependent alias. (trees_in::decl_value): Likewise. Set as dependent alias, if it is one. gcc/testsuite/ * g++.dg/modules/pr99496_a.H: New. * g++.dg/modules/pr99496_b.C: New.