diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr24489.f90 | 14 |
2 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 57c5b58..7e0e29a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-10-23 Jerry DeLisle <jvdelisle@verizon.net> + + PR libgfortran/24489 + * gfortran.dg/pr24489.f90: New test. + 2005-10-23 Andrew Pinski <pinskia@physics.uc.edu> PR fortran/23635 diff --git a/gcc/testsuite/gfortran.dg/pr24489.f90 b/gcc/testsuite/gfortran.dg/pr24489.f90 new file mode 100644 index 0000000..f332755 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr24489.f90 @@ -0,0 +1,14 @@ +! { dg-do run } +! PR24489 Assure that read does not go past the end of record. The width of +! the format specifier is 8, but the internal unit record length is 4 so only +! the first 4 characters should be read. +! Contributed by Jerry DeLisle <jvdelisle@verizon.net>. +program pr24489 + character*4, dimension(8) :: abuf = (/"0123","4567","89AB","CDEF", & + "0123","4567","89AB","CDEF"/) + character*4, dimension(2,4) :: buf + character*8 :: a + equivalence (buf,abuf) + read(buf, '(a8)') a + if (a.ne.'0123') call abort() +end program pr24489 |