https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118896

--- Comment #1 from Mikael Morin <mikael at gcc dot gnu.org> ---
Draft patch:

diff --git a/gcc/fortran/trans-decl.cc b/gcc/fortran/trans-decl.cc
index 4ae22a5584d..95d39e837e9 100644
--- a/gcc/fortran/trans-decl.cc
+++ b/gcc/fortran/trans-decl.cc
@@ -2085,7 +2085,8 @@ gfc_get_symbol_decl (gfc_symbol * sym)
   if (sym->attr.vtab || def_init)
     {
       DECL_ARTIFICIAL (decl) = 1;
-      if (def_init && sym->value)
+      if (sym->attr.vtab
+         || (def_init && sym->value))
        TREE_READONLY (decl) = 1;
     }

Reply via email to