mirror of git://gcc.gnu.org/git/gcc.git
re PR fortran/57633 (I/O: Problem with formatted read: reading CR-LF files (\r\n))
2013-06-20 Tobias Burnus <burnus@net-b.de>
PR fortran/57633
* io/list_read.c (next_char, eat_separator): Don't set EOL for \r.
2013-06-20 Tobias Burnus <burnus@net-b.de>
PR fortran/57633
* gfortran.dg/list_read_11.f90: New.
From-SVN: r200238
This commit is contained in:
parent
c3a9b91b4a
commit
937424c182
|
|
@ -1,3 +1,8 @@
|
||||||
|
2013-06-20 Tobias Burnus <burnus@net-b.de>
|
||||||
|
|
||||||
|
PR fortran/57633
|
||||||
|
* gfortran.dg/list_read_11.f90: New.
|
||||||
|
|
||||||
2013-06-20 Richard Biener <rguenther@suse.de>
|
2013-06-20 Richard Biener <rguenther@suse.de>
|
||||||
|
|
||||||
PR tree-optimization/57584
|
PR tree-optimization/57584
|
||||||
|
|
@ -23,13 +28,13 @@
|
||||||
|
|
||||||
2013-06-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
|
2013-06-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
|
||||||
|
|
||||||
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Replaced all the
|
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Replaced all the
|
||||||
hard-coded values of array sizes with a #define.
|
hard-coded values of array sizes with a #define.
|
||||||
* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
|
* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
|
||||||
* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
|
* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
|
||||||
* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
|
* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
|
||||||
* c-c++-common/cilk-plus/AN/pr57577.c: Likewise.
|
* c-c++-common/cilk-plus/AN/pr57577.c: Likewise.
|
||||||
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
|
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
|
||||||
|
|
||||||
2013-06-19 Yufeng Zhang <yufeng.zhang@arm.com>
|
2013-06-19 Yufeng Zhang <yufeng.zhang@arm.com>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
! { dg-do run }
|
||||||
|
! { dg-options "-fbackslash" }
|
||||||
|
!
|
||||||
|
! PR fortran/57633
|
||||||
|
!
|
||||||
|
program teststuff
|
||||||
|
implicit none
|
||||||
|
integer::a
|
||||||
|
character(len=10)::s1,s2
|
||||||
|
|
||||||
|
open(11,file="testcase.txt",form='unformatted',access='stream',status='new')
|
||||||
|
write(11) 'line1,1,\r\nline2'
|
||||||
|
close(11)
|
||||||
|
|
||||||
|
open(11,file="testcase.txt",form='formatted')
|
||||||
|
s1 = repeat('x', len(s1))
|
||||||
|
a = 99
|
||||||
|
read(11,*)s1,a
|
||||||
|
if (s1 /= "line1" .or. a /= 1) call abort()
|
||||||
|
|
||||||
|
s1 = repeat('x', len(s1))
|
||||||
|
read(11,"(a)")s1
|
||||||
|
close(11,status="delete")
|
||||||
|
if (s1 /= "line2") call abort()
|
||||||
|
|
||||||
|
|
||||||
|
open(11,file="testcase.txt",form='unformatted',access='stream',status='new')
|
||||||
|
write(11) 'word1\rword2,\n'
|
||||||
|
close(11)
|
||||||
|
|
||||||
|
open(11,file="testcase.txt",form='formatted')
|
||||||
|
s1 = repeat('x', len(s1))
|
||||||
|
s2 = repeat('x', len(s1))
|
||||||
|
read(11,*)s1,s2
|
||||||
|
close(11,status="delete")
|
||||||
|
if (s1 /= "word1") call abort()
|
||||||
|
if (s2 /= "word2") call abort()
|
||||||
|
end program teststuff
|
||||||
|
|
@ -1,3 +1,8 @@
|
||||||
|
2013-06-20 Tobias Burnus <burnus@net-b.de>
|
||||||
|
|
||||||
|
PR fortran/57633
|
||||||
|
* io/list_read.c (next_char, eat_separator): Don't set EOL for \r.
|
||||||
|
|
||||||
2012-06-19 Uros Bizjak <ubizjak@gmail.com>
|
2012-06-19 Uros Bizjak <ubizjak@gmail.com>
|
||||||
|
|
||||||
* config/fpu-387.h: Use __asm__ and __volatile__ consistently.
|
* config/fpu-387.h: Use __asm__ and __volatile__ consistently.
|
||||||
|
|
|
||||||
|
|
@ -242,7 +242,7 @@ next_char (st_parameter_dt *dtp)
|
||||||
dtp->u.p.current_unit->strm_pos++;
|
dtp->u.p.current_unit->strm_pos++;
|
||||||
}
|
}
|
||||||
done:
|
done:
|
||||||
dtp->u.p.at_eol = (c == '\n' || c == '\r' || c == EOF);
|
dtp->u.p.at_eol = (c == '\n' || c == EOF);
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -334,7 +334,6 @@ eat_separator (st_parameter_dt *dtp)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '\r':
|
case '\r':
|
||||||
dtp->u.p.at_eol = 1;
|
|
||||||
if ((n = next_char(dtp)) == EOF)
|
if ((n = next_char(dtp)) == EOF)
|
||||||
return LIBERROR_END;
|
return LIBERROR_END;
|
||||||
if (n != '\n')
|
if (n != '\n')
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue