re PR libfortran/15311 (Incorrect handling of A edit descriptor)

PR fortran/15311
	* io/write.c (write_a): right justify A edit output.
libgfortran/
	* gfortran.fortran-torture/execute/write_a_1.f90: New test.

From-SVN: r81895
This commit is contained in:
Bud Davis 2004-05-15 18:35:39 +00:00 committed by Paul Brook
parent 1de8a83646
commit 94161cec95
4 changed files with 26 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2004-05-15 Bud Davis <bdavis9659@comcast.net>
PR fortran/15311
* gfortran.fortran-torture/execute/write_a_1.f90: New test.
2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/13826

View File

@ -0,0 +1,14 @@
! pr 15311
! output with 'A' edit descriptor
program write_a_1
character*25 s
! string = format
write(s,'(A11)') "hello world"
if (s.ne."hello world") call abort
! string < format
write(s,'(A2)') "hello world"
if (s.ne."he") call abort
! string > format
write(s,'(A18)') "hello world"
if (s.ne." hello world") call abort
end

View File

@ -1,3 +1,8 @@
2004-05-15 Bud Davis <bdavis9659@comcast.net>
PR fortran/15311
* io/write.c (write_a): right justify A edit output.
2004-05-14 Bud Davis <bdavis9659@comcast.net>
PR fortran/15149

View File

@ -50,8 +50,8 @@ write_a (fnode * f, const char *source, int len)
memcpy (p, source, wlen);
else
{
memcpy (p, source, len);
memset (p + len, ' ', wlen - len);
memset (p, ' ', wlen - len);
memcpy (p + wlen - len, source, len);
}
}