[Patch, fortran] PR31163 - SAVEd derived types with ALLOCATABLE components don't work

Tobias Burnus burnus@net-b.de
Wed Mar 14 09:23:00 GMT 2007


Paul,

Paul Thomas wrote:
> This is obvious but I submit it for review anyway:)
I think this is ok, but I have a question, where does *.data get
initialized to zero? It seems to work correctly (including valgrind
check), but I somehow miss in the tree something like for pointers:

  static struct foo_type f_a = {.mv={.data=0B}};


The tree is for allocatable is:

  static struct foo t = {};
  if ((real4[0:] *) t.x.data != 0B)

> PS Note that since Tobias' fix, c_by_val_1.f fails on Cygwin_NT
Do you know which part fails (real(8), integer(8), complex(8) or even
something else)? Unless, we find something which works on all platforms,
we have to wait for kind=c_double, c_int64_t and c_complex_double  :-(

Tobias



More information about the Gcc-patches mailing list