re PR fortran/82375 (PDT components in PDT declarations fail to compile)
authorPaul Thomas <pault@gcc.gnu.org>
Sun, 8 Oct 2017 15:23:24 +0000 (15:23 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Sun, 8 Oct 2017 15:23:24 +0000 (15:23 +0000)
2017-10-08  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/82375
* module.c : Bump up MOD_VERSION to 15.
(mio_component): Edit comment about PDT specification list.
(mio_expr, mio_symbol): Include the expression and symbol PDT
specification lists in the same way as in mio_component.

From-SVN: r253526

gcc/fortran/ChangeLog
gcc/fortran/module.c

index 18edd111725de43da53ce2dd276dd7b0ff748ab5..37a298019dde3fa7dd00d7d7c83d3d842262203a 100644 (file)
@@ -1,3 +1,11 @@
+2017-10-08  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/82375
+       * module.c : Bump up MOD_VERSION to 15.
+       (mio_component): Edit comment about PDT specification list.
+       (mio_expr, mio_symbol): Include the expression and symbol PDT
+       specification lists in the same way as in mio_component.
+
 2017-10-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
        * dump_prase_tree (show_symbol): Output list of variables in
index 3f19a02160969f4c564ca2eb588a349934757970..16585a959b634bc41e71abde61015e27ebb12f09 100644 (file)
@@ -84,7 +84,7 @@ along with GCC; see the file COPYING3.  If not see
 
 /* Don't put any single quote (') in MOD_VERSION, if you want it to be
    recognized.  */
-#define MOD_VERSION "14"
+#define MOD_VERSION "15"
 
 
 /* Structure that describes a position within a module file.  */
@@ -2820,7 +2820,7 @@ mio_component (gfc_component *c, int vtype)
   /* PDT templates store the expression for the kind of a component here.  */
   mio_expr (&c->kind_expr);
 
-  /* PDT types store component specification list here. */
+  /* PDT types store the component specification list here. */
   mio_actual_arglist (&c->param_list, true);
 
   mio_symbol_attribute (&c->attr);
@@ -3666,6 +3666,9 @@ mio_expr (gfc_expr **ep)
       break;
     }
 
+  /* PDT types store the expression specification list here. */
+  mio_actual_arglist (&e->param_list, true);
+
   mio_rparen ();
 }
 
@@ -4321,6 +4324,9 @@ mio_symbol (gfc_symbol *sym)
   /* Load/save the f2k_derived namespace of a derived-type symbol.  */
   mio_full_f2k_derived (sym);
 
+  /* PDT types store the symbol specification list here. */
+  mio_actual_arglist (&sym->param_list, true);
+
   mio_namelist (sym);
 
   /* Add the fields that say whether this is from an intrinsic module,