https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110993
anlauf at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |anlauf at gcc dot gnu.org
--- Comment #2 from anlauf at gcc dot gnu.org ---
This fixes the bogus shape mismatch by recognizing the rename-on-use:
diff --git a/gcc/fortran/frontend-passes.cc b/gcc/fortran/frontend-passes.cc
index 987238794da..83b184cfe83 100644
--- a/gcc/fortran/frontend-passes.cc
+++ b/gcc/fortran/frontend-passes.cc
@@ -5800,6 +5800,10 @@ check_against_globals (gfc_symbol *sym)
if (sym->binding_label)
sym_name = sym->binding_label;
+ else if (sym->attr.use_rename
+ && sym->ns->use_stmts->rename
+ && sym->ns->use_stmts->rename->local_name[0] != '\0')
+ sym_name = sym->ns->use_stmts->rename->local_name;
else
sym_name = sym->name;