+2005-05-09 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/19155
+ * gfortran.dg/pr19155.f: New test.
+
2005-05-08 Roger Sayle <roger@eyesopen.com>
PR inline-asm/8788
--- /dev/null
+! { dg-do run }
+!
+! PR libfortran/19155
+! We accept 'E+00' as a valid real number. The standard says it is not,
+! but doesn't require us to issue an error. Since g77 accepts this as zero,
+! we do the same.
+ real a
+ a = 42
+ open (19,status='scratch')
+ write (19,'(A15)') 'E+00'
+ rewind (19)
+ read (19,'(E15.8)') a
+ if (a .ne. 0) call abort
+ close (19)
+ end
+2005-05-09 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/19155
+ * io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
+ non-blank characters of a real number.
+
2005-05-04 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/21354
* around it. */
static stream *
-fd_to_stream (int fd, int prot)
+fd_to_stream (int fd, int prot, int avoid_mmap)
{
struct stat statbuf;
unix_stream *s;
s->file_length = S_ISREG (statbuf.st_mode) ? statbuf.st_size : -1;
#if HAVE_MMAP
- mmap_open (s);
+ if (avoid_mmap)
+ fd_open (s);
+ else
+ mmap_open (s);
#else
fd_open (s);
#endif
internal_error ("open_external(): Bad action");
}
- return fd_to_stream (fd, prot);
+ return fd_to_stream (fd, prot, 0);
}
stream *
input_stream (void)
{
- return fd_to_stream (STDIN_FILENO, PROT_READ);
+ return fd_to_stream (STDIN_FILENO, PROT_READ, 1);
}
stream *
output_stream (void)
{
- return fd_to_stream (STDOUT_FILENO, PROT_WRITE);
+ return fd_to_stream (STDOUT_FILENO, PROT_WRITE, 1);
}
stream *
error_stream (void)
{
- return fd_to_stream (STDERR_FILENO, PROT_WRITE);
+ return fd_to_stream (STDERR_FILENO, PROT_WRITE, 1);
}
/* init_error_stream()-- Return a pointer to the error stream. This