open.c (new_unit): set record length to max_offset rather than using a hard-coded limit (which was...

* open.c (new_unit): set record length to max_offset rather than
	  using a hard-coded limit (which was too low).

	* write_big_array.f90: New test.

From-SVN: r96573
This commit is contained in:
Francois-Xavier Coudert 2005-03-16 20:32:08 +01:00 committed by François-Xavier Coudert
parent 9abd1955da
commit 2786eb77b2
4 changed files with 21 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2005-03-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20257
* pr20257.f90: New test.
2005-03-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20480

View File

@ -0,0 +1,9 @@
! { dg-do run }
integer,parameter :: n = 10000
real(8) array(10000)
array(:) = 0
open (10, status='scratch')
write (10,*) array
close (10)
end

View File

@ -1,3 +1,9 @@
2005-03-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20257
* open.c (new_unit): set record length to max_offset rather than
using a hard-coded limit (which was too low).
2005-03-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20480

View File

@ -358,7 +358,7 @@ new_unit (unit_flags * flags)
/* Unspecified recl ends up with a processor dependent value. */
u->recl = (ioparm.recl_in != 0) ? ioparm.recl_in : DEFAULT_RECL;
u->recl = (ioparm.recl_in != 0) ? ioparm.recl_in : g.max_offset;
u->last_record = 0;
u->current_record = 0;