diff options
author | Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de> | 2005-11-01 22:55:02 +0100 |
---|---|---|
committer | Tobias Schlüter <tobi@gcc.gnu.org> | 2005-11-01 22:55:02 +0100 |
commit | 0be8cb80ee8062154c853a2ea87fe01c287f91f6 (patch) | |
tree | 4335caee281df02cc8c23623c35e266e0f85e8f3 | |
parent | 6a8697062cd7b29a9bb17b5d4af09035e143a23d (diff) | |
download | gcc-0be8cb80ee8062154c853a2ea87fe01c287f91f6.zip gcc-0be8cb80ee8062154c853a2ea87fe01c287f91f6.tar.gz gcc-0be8cb80ee8062154c853a2ea87fe01c287f91f6.tar.bz2 |
re PR fortran/24008 (gfortran too permissive about ENTRY syntax)
fortran/
PR fortran/24008
* decl.c (gfc_match_entry): Function entries need an argument list.
testsuite/
PR fortran/24008
* gfortran.dg/entry_5.f90: New.
* gfortran.fortran-torture/execute/entry_9.f90: Fix syntax error.
From-SVN: r106358
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/decl.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/entry_5.f90 | 11 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 | 4 |
5 files changed, 25 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 7fad64c..4309d21 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> + + PR fortran/24008 + * decl.c (gfc_match_entry): Function entries need an argument list. + 2005-11-01 Erik Edelmann <eedelman@gcc.gnu.org> PR 24245 diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index 7516057..74aa684 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -2691,7 +2691,7 @@ gfc_match_entry (void) else { /* An entry in a function. */ - m = gfc_match_formal_arglist (entry, 0, 1); + m = gfc_match_formal_arglist (entry, 0, 0); if (m != MATCH_YES) return MATCH_ERROR; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 09504fc..370954d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> + + PR fortran/24008 + * gfortran.dg/entry_5.f90: New. + * gfortran.fortran-torture/execute/entry_9.f90: Fix syntax error. + 2005-11-01 Bob Wilson <bob.wilson@acm.org> * gcc.dg/intmax_t-1.c: Disable for xtensa-*-elf*. diff --git a/gcc/testsuite/gfortran.dg/entry_5.f90 b/gcc/testsuite/gfortran.dg/entry_5.f90 new file mode 100644 index 0000000..ad0554c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/entry_5.f90 @@ -0,0 +1,11 @@ +! { dg-do compile } +! PR 24008 +! an argument list to the entry is required +REAL FUNCTION funct() + funct = 0.0 + RETURN +! + ENTRY enter RESULT (answer) ! { dg-error "Unclassifiable statement" } + answer = 1.0 + RETURN +END FUNCTION funct diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 index d29f4b8..a269fdf 100644 --- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 +++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 @@ -5,12 +5,12 @@ integer a, f1, e1 f1 = 15 + a return - entry e1 + entry e1() e1 = 42 end function function f2 () real f2, e2 - entry e2 + entry e2() e2 = 45 end function |