https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78881
--- Comment #25 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot
Uni-Bielefeld.DE> ---
> --- Comment #24 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
[...]
> Can you try this patch. From what I read there can be issues with char pointer
> sizes between these architectures.
>
> diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c
> index 1e56b5de..daa741b4 100644
> --- a/libgfortran/io/transfer.c
> +++ b/libgfortran/io/transfer.c
> @@ -272,7 +272,7 @@ read_sf_internal (st_parameter_dt *dtp, int * length)
> return NULL;
> }
>
> - if (base && *base == 0)
> + if (base && *base == '\0')
> {
> generate_error (&dtp->common, LIBERROR_EOR, NULL);
> return NULL;
Doesn't make any difference.
Btw., I happened to notice that this "int * length" (and many more
instances throughout the file and probably all of libgfortran) is
in violation of the GNU Coding Standard: this should be "int *length"
instead.
Rainer