From 92ffc027d178e87463d823b11a6833d5ea1fa9c7 Mon Sep 17 00:00:00 2001 From: Bud Davis Date: Sat, 31 May 2003 19:45:41 +0000 Subject: re PR fortran/10843 (g77 -ffree-form rejects "GO TO".) 2003-05-31 Bud Davis PR fortran/10843 * sta.c (ffesta_second_): Parse GO TO correctly, even in free source format. From-SVN: r67276 --- gcc/f/ChangeLog | 6 ++++++ gcc/f/sta.c | 18 +++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog index 02e22ddb..c0ebfe9 100644 --- a/gcc/f/ChangeLog +++ b/gcc/f/ChangeLog @@ -1,3 +1,9 @@ +2003-05-31 Bud Davis + + PR fortran/10843 + * sta.c (ffesta_second_): Parse GO TO correctly, + even in free source format. + 2003-05-31 Andreas Jaeger * lex.c (ffelex_hash_): Remove HANDLE_PRAGMA and diff --git a/gcc/f/sta.c b/gcc/f/sta.c index 0b4c11a..db3207f 100644 --- a/gcc/f/sta.c +++ b/gcc/f/sta.c @@ -1,5 +1,5 @@ /* sta.c -- Implementation File (module.c template V1.0) - Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc. Contributed by James Craig Burley. This file is part of GNU Fortran. @@ -954,6 +954,22 @@ ffesta_second_ (ffelexToken t) ffesta_add_possible_nonexec_ ((ffelexHandler) ffestb_dummy); break; + case FFESTR_firstGO: + if ((ffelex_token_type (ffesta_token_0_) == FFELEX_typeNAMES) + || (ffelex_token_type (t) != FFELEX_typeNAME)) + ffesta_add_possible_exec_ ((ffelexHandler) ffestb_goto); + else + switch (ffesta_second_kw) + { + case FFESTR_secondTO: + ffesta_add_possible_exec_ ((ffelexHandler) ffestb_goto); + break; + default: + ffesta_add_possible_exec_ ((ffelexHandler) ffestb_goto); + break; + } + break; + case FFESTR_firstGOTO: ffesta_add_possible_exec_ ((ffelexHandler) ffestb_goto); break; -- cgit v1.1