2019-09-15 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/91727
* resolve.c (conformable_arrays): If array-spec is NULL, then
allocate-object is a scalar. a conformability check only occurs
for an array source-expr.
2019-09-15 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/91727
* gfortran.dg/pr91727.f90: New test.
From-SVN: r275731
+2019-09-15 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/91727
+ * resolve.c (conformable_arrays): If array-spec is NULL, then
+ allocate-object is a scalar. a conformability check only occurs
+ for an array source-expr.
+
2019-09-15 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/91550
for (tail = e2->ref; tail && tail->next; tail = tail->next);
/* First compare rank. */
- if ((tail && e1->rank != tail->u.ar.as->rank)
+ if ((tail && (!tail->u.ar.as || e1->rank != tail->u.ar.as->rank))
|| (!tail && e1->rank != e2->rank))
{
gfc_error ("Source-expr at %L must be scalar or have the "
+2019-09-15 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/91727
+ * gfortran.dg/pr91727.f90: New test.
+
2019-09-15 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/91550
--- /dev/null
+! { dg-do compile }
+! Code contributed by Gerhard Steinmetz.
+program p
+ type t
+ class(*), allocatable :: a
+ end type
+ type(t) :: x
+ allocate (x%a, source=[1]) ! { dg-error "have the same rank as" }
+end