https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124596
--- Comment #2 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
OK, the difference comes from Save_Global_References.Set_Global_Type:
-- Otherwise mark the type for flipping and set the full view on N2
-- when available, which is necessary for Check_Private_View to swap
-- back the views in case the full declaration of Typ is visible in
-- the instantiation context. Note that this will be problematic if
-- N2 is re-analyzed later, e.g. if it's a default value in a call.