re PR fortran/25264 (write to internal unit from the string itself gives wrong result ?)
2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/25264 PR libgfortran/25349 * gfortran.dg/tl_editing.f90: Added additional checks. * gfortran.dg/t_editing.f: New test. * gfortran.dg/write_padding.f90: New test From-SVN: r108673
This commit is contained in:
parent
5535b63f1a
commit
184210e82c
@ -1,3 +1,11 @@
|
|||||||
|
2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR libgfortran/25264
|
||||||
|
PR libgfortran/25349
|
||||||
|
* gfortran.dg/tl_editing.f90: Added additional checks.
|
||||||
|
* gfortran.dg/t_editing.f: New test.
|
||||||
|
* gfortran.dg/write_padding.f90: New test
|
||||||
|
|
||||||
2005-12-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
2005-12-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||||
|
|
||||||
PR testsuite/25215
|
PR testsuite/25215
|
||||||
|
8
gcc/testsuite/gfortran.dg/t_editing.f
Normal file
8
gcc/testsuite/gfortran.dg/t_editing.f
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
! { dg-do run }
|
||||||
|
! PR25349 Check T editing. Test case from PR submitted by Thomas Koenig
|
||||||
|
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
program main
|
||||||
|
character(len=10) line
|
||||||
|
write (line,'(1X,A,T1,A)') 'A','B'
|
||||||
|
if (line.ne.'BA') call abort()
|
||||||
|
end
|
@ -3,12 +3,30 @@
|
|||||||
! Left tabbing, followed by X or T-tabbing to the right would
|
! Left tabbing, followed by X or T-tabbing to the right would
|
||||||
! cause spaces to be overwritten on output data.
|
! cause spaces to be overwritten on output data.
|
||||||
! Contributed by Paul Thomas <pault@gcc.gnu.org>
|
! Contributed by Paul Thomas <pault@gcc.gnu.org>
|
||||||
program tl_editting
|
! PR25349 Revised by Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
character*10 :: line
|
program tl_editting
|
||||||
character*10 :: aline = "abcdefxyij"
|
character*10 :: line, many(5), s
|
||||||
character*2 :: bline = "gh"
|
character*10 :: aline = "abcdefxyij"
|
||||||
character*10 :: cline = "abcdefghij"
|
character*2 :: bline = "gh"
|
||||||
write (line, '(a10,tl6,2x,a2)') aline, bline
|
character*10 :: cline = "abcdefghij"
|
||||||
if (line.ne.cline) call abort ()
|
|
||||||
end program tl_editting
|
! Character unit test
|
||||||
|
write (line, '(a10,tl6,2x,a2)') aline, bline
|
||||||
|
if (line.ne.cline) call abort ()
|
||||||
|
|
||||||
|
! Character array unit test
|
||||||
|
many = "0123456789"
|
||||||
|
write(many(1:5:2), '(a10,tl6,2x,a2)') aline, bline, aline, bline, aline,&
|
||||||
|
&bline
|
||||||
|
if (many(1).ne.cline) call abort ()
|
||||||
|
if (many(3).ne.cline) call abort ()
|
||||||
|
if (many(5).ne.cline) call abort ()
|
||||||
|
|
||||||
|
! File unit test
|
||||||
|
write (10, '(a10,tl6,2x,a2)') aline, bline
|
||||||
|
rewind(10)
|
||||||
|
read(10, '(a)') s
|
||||||
|
if (s.ne.cline) call abort
|
||||||
|
|
||||||
|
end program tl_editting
|
||||||
|
|
||||||
|
13
gcc/testsuite/gfortran.dg/write_padding.f90
Normal file
13
gcc/testsuite/gfortran.dg/write_padding.f90
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
! { dg-do run }
|
||||||
|
! PR25264 Verify that the internal unit, str, is not cleared
|
||||||
|
! before it is needed elsewhere. This is an extension.
|
||||||
|
! Test derived from test case by JPR. Contributed by
|
||||||
|
! Jerry DeLisle <jvdelisle@verizon.net>.
|
||||||
|
program write_padding
|
||||||
|
character(len=10) :: str
|
||||||
|
real :: atime
|
||||||
|
str = '123'
|
||||||
|
write( str, '(a3,i1)' ) trim(str),4
|
||||||
|
if (str.ne."1234") call abort()
|
||||||
|
end program write_padding
|
||||||
|
|
Loading…
Reference in New Issue
Block a user