diff options
author | Bud Davis <bdavis9659@comcast.net> | 2004-06-19 16:42:05 +0000 |
---|---|---|
committer | Bud Davis <bdavis@gcc.gnu.org> | 2004-06-19 16:42:05 +0000 |
commit | 04b0faec0878e8b47e732369bad771e8297a6baa (patch) | |
tree | ce0db1391797050ac25dc55f5b988b01053e131f /gcc | |
parent | bb60c95face9e13d4d62dc028bd20e073b4babcf (diff) | |
download | gcc-04b0faec0878e8b47e732369bad771e8297a6baa.zip gcc-04b0faec0878e8b47e732369bad771e8297a6baa.tar.gz gcc-04b0faec0878e8b47e732369bad771e8297a6baa.tar.bz2 |
re PR libfortran/16080 (segmentation fault when reading empty string)
2004-06-19 Bud Davis <bdavis9659@comcast.net>
PR gfortran/16080
* gfortran.fortran-torture/execute/read_null_string.f90: New file.
* io/list_read.c(set_value): don't copy if the string is null.
From-SVN: r83388
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90 | 15 |
2 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 92679a2..3061f06 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2004-06-19 Bud Davis <bdavis9659@comcast.net> + + PR gfortran/16080 + * gfortran.fortran-torture/execute/read_null_string.f90: New file. + 2004-06-19 Andrew Pinski <pinskia@physics.uc.edu> * g++.dg/lookup/crash3.C: Use __SIZE_TYPE__ diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90 new file mode 100644 index 0000000..7cf9492 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90 @@ -0,0 +1,15 @@ +! pr 16080, segfault on reading an empty string + implicit none + integer t + character*20 temp_name + character*2 quotes + open(unit=7,status='SCRATCH') + quotes = '""""' ! "" in the file + write(7,*)1 + write(7,'(A)')quotes + temp_name = 'hello' ! make sure the read overwrites it + rewind(7) + read(7, *) t + read(7, *) temp_name + if (temp_name.ne.'') call abort + end |