Commit 293fcb2e by Francois-Xavier Coudert Committed by François-Xavier Coudert

re PR libfortran/20950 ([4.0 only] segfault in INQUIRE asking for SEQUENTIAL status)

	PR libfortran/20950
	* io/inquire.c (inquire_via_unit): Check for the gfc_unit being
	NULL when setting ioparm.sequential.
	* gfortran.dg/pr20950.f: New test.

From-SVN: r98312
parent 8c9de419
2005-04-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20950
* gfortran.dg/pr20950.f: New test.
2005-04-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/19216
......
! PR libfortran/20950
! Original bug-report by Walt Brainerd, The Fortran Company
! { dg-do run }
character*20 c
inquire (33, sequential = c)
if (c .ne. "UNKNOWN") call abort
end
2005-04-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20950
* io/inquire.c (inquire_via_unit): Check for the gfc_unit being
NULL when setting ioparm.sequential.
2005-04-17 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/21075
......
......@@ -87,13 +87,16 @@ inquire_via_unit (gfc_unit * u)
if (ioparm.sequential != NULL)
{
/* disallow an open direct access file to be accessed
sequentially */
if (u->flags.access==ACCESS_DIRECT)
p = "NO";
else
p = (u == NULL) ? inquire_sequential (NULL, 0) :
inquire_sequential (u->file, u->file_len);
if (u == NULL)
p = inquire_sequential (NULL, 0);
else
{
/* disallow an open direct access file to be accessed sequentially */
if (u->flags.access == ACCESS_DIRECT)
p = "NO";
else
p = inquire_sequential (u->file, u->file_len);
}
cf_strcpy (ioparm.sequential, ioparm.sequential_len, p);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment