diff options
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/parse.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.fortran-torture/compile/empty.f90 | 0 |
4 files changed, 14 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 0ee880d..5663b31 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2005-10-05 Richard Guenther <rguenther@suse.de> + + PR fortran/24176 + * parse.c (gfc_parse_file): Exit early for empty files. + 2005-10-03 Steve Ellcey <sje@cup.hp.com> * fortran/trans-types.c (gfc_init_kinds): Only pass float, double, diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index 1e28a7e..043c3b4 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -2560,6 +2560,10 @@ gfc_parse_file (void) seen_program = 0; + /* Exit early for empty files. */ + if (gfc_at_eof ()) + goto done; + loop: gfc_init_2 (); st = next_statement (); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6790aa8..b24ca2c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-10-05 Richard Guenther <rguenther@suse.de> + + PR fortran/24176 + * gfortran.fortran-torture/compile/empty.f90: New testcase. + 2005-10-05 Nathan Sidwell <nathan@codesourcery.com> PR c++/23513 diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/empty.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/empty.f90 new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/compile/empty.f90 |