Commit c96cfa49 by Tobias Schlüter Committed by Tobias Schlüter

decl.c (gfc_match_entry): Function entries don't need an argument list if there's no RESULT clause.

fortran/
	* decl.c (gfc_match_entry): Function entries don't need an argument
	list if there's no RESULT clause.
testsuite/
	* gfortran.fortran-torture/execute/entry_9.f90: Revert previous
	change (r106358).

From-SVN: r106361
parent 0be8cb80
2005-11-02 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
* decl.c (gfc_match_entry): Function entries don't need an argument
list if there's no RESULT clause.
2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/24008
......
......@@ -2603,6 +2603,7 @@ gfc_match_entry (void)
gfc_compile_state state;
match m;
gfc_entry_list *el;
locus old_loc;
m = gfc_match_name (name);
if (m != MATCH_YES)
......@@ -2690,8 +2691,26 @@ gfc_match_entry (void)
}
else
{
/* An entry in a function. */
m = gfc_match_formal_arglist (entry, 0, 0);
/* An entry in a function.
We need to take special care because writing
ENTRY f()
as
ENTRY f
is allowed, whereas
ENTRY f() RESULT (r)
can't be written as
ENTRY f RESULT (r). */
old_loc = gfc_current_locus;
if (gfc_match_eos () == MATCH_YES)
{
gfc_current_locus = old_loc;
/* Match the empty argument list, and add the interface to
the symbol. */
m = gfc_match_formal_arglist (entry, 0, 1);
}
else
m = gfc_match_formal_arglist (entry, 0, 0);
if (m != MATCH_YES)
return MATCH_ERROR;
......
2005-11-02 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
* gfortran.fortran-torture/execute/entry_9.f90: Revert previous
change (r106358).
2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/24008
......@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment