2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/70870
Backport from trunk
* data.c (gfc_assign_data_value): Check that a data object does
not also have default initialization.
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/70870
Backport from trunk
* gfortran.dg/pr70870_1.f90: New test.
From-SVN: r260181
+2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/70870
+ Backport from trunk
+ * data.c (gfc_assign_data_value): Check that a data object does
+ not also have default initialization.
+
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/85521
}
else
{
+ if (lvalue->ts.type == BT_DERIVED
+ && gfc_has_default_initializer (lvalue->ts.u.derived))
+ {
+ gfc_error ("Nonpointer object %qs with default initialization "
+ "shall not appear in a DATA statement at %L",
+ symbol->name, &lvalue->where);
+ return false;
+ }
+
/* Overwriting an existing initializer is non-standard but usually only
provokes a warning from other compilers. */
if (init != NULL)
+2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/70870
+ Backport from trunk
+ * gfortran.dg/pr70870_1.f90: New test.
+
2018-05-11 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/85521
--- /dev/null
+! { dg-do compile }
+! PR fortran/70870
+! Contributed by Vittorio Zecca <zeccav at gmail dot com >
+ type t
+ integer :: g=0 ! default initialization
+ end type
+ type(t) :: v2
+ data v2/t(2)/ ! { dg-error "default initialization shall not" }
+ end