[patch, libgfortran] PR47778 reading two arrays of structures from namelist fails
Tobias Burnus
burnus@net-b.de
Sun Feb 27 17:39:00 GMT 2011
Jerry DeLisle wrote:
> The attached patch fixes this bug by resetting the pprev_nl pointer to
> NULL when the rank of the previous object read was zero. pprev_nl is
> used to track multiple reads from the same namelist variable.
> Regression tested on x86-64.
> OK for trunk? I suggest we should back port to 4.5 and possibly earlier.
OK for 4.6 and for 4.4/4.5.
> }
> + if (prev_nl && prev_nl->var_rank == 0)
> + prev_nl = NULL;
I wonder whether a comment would help to understand the code.
> --- io/list_read.c (revision 170543)
> +++ io/list_read.c (working copy)
> @@ -2985,6 +2985,9 @@
> {
> int c;
> char nml_err_msg[200];
> +
> + snprintf (nml_err_msg, sizeof nml_err_msg, "Internal namelist read
> error");
Is there a reason that you do not use:
char nml_err_msg[200] = "Internal namelist read error";
That looks simpler too me.
Tobias
More information about the Fortran
mailing list