On Sun, Sep 22, 2019 at 04:28:49PM +0100, Paul Richard Thomas wrote: > Fixing the original problem in the module took a few minutes. Making > the module do something useful took rather longer! The testcase in the > patch compiles with 6-branch but segfaults in runtime. > > Bootstrapped and regtested on FC30/x86_64 - OK to commit and go > steadily back through the branches over some weeks? > > Regards > > Paul > > 2019-09-22 Paul Thomas <pa...@gcc.gnu.org> > > PR fortran/91726 > * resolve.c (gfc_expr_to_initialize): Bail out with a copy of > the original expression if the array ref is a scalar and the > array_spec has corank. > * trans-array.c (gfc_conv_array_ref): Such expressions are OK > even if the array ref codimen is zero. > * trans-expr.c (gfc_get_class_from_expr): New function taken > from gfc_get_vptr_from_expr. > (gfc_get_vptr_from_expr): Call new function. > * trans-stmt.c (trans_associate_var): If one of these is a > target expression, extract the class expression from the target > and copy its fields to a new target variable. > * trans.h : Add prototype for gfc_get_class_from_expr. > > 2019-09-22 Paul Thomas <pa...@gcc.gnu.org> > > PR fortran/91726 > * gfortran.dg/coarray_poly_9.f90 : New test.
Looks good to me. -- Steve