diff options
Diffstat (limited to 'contrib/gcc/f/stc.c')
-rw-r--r-- | contrib/gcc/f/stc.c | 50 |
1 files changed, 27 insertions, 23 deletions
diff --git a/contrib/gcc/f/stc.c b/contrib/gcc/f/stc.c index e720f9d..b89b747 100644 --- a/contrib/gcc/f/stc.c +++ b/contrib/gcc/f/stc.c @@ -1,6 +1,6 @@ /* stc.c -- Implementation File (module.c template V1.0) Copyright (C) 1995-1997 Free Software Foundation, Inc. - Contributed by James Craig Burley (burley@gnu.org). + Contributed by James Craig Burley. This file is part of GNU Fortran. @@ -339,14 +339,14 @@ static void ffestc_shriek_where_ (bool ok); #if FFESTR_F90 static void ffestc_shriek_wherethen_ (bool ok); #endif -static int ffestc_subr_binsrch_ (char **list, int size, ffestpFile *spec, - char *whine); +static int ffestc_subr_binsrch_ (const char **list, int size, ffestpFile *spec, + const char *whine); static ffestvFormat ffestc_subr_format_ (ffestpFile *spec); static bool ffestc_subr_is_branch_ (ffestpFile *spec); static bool ffestc_subr_is_format_ (ffestpFile *spec); -static bool ffestc_subr_is_present_ (char *name, ffestpFile *spec); -static int ffestc_subr_speccmp_ (char *string, ffestpFile *spec, - char **target, int *length); +static bool ffestc_subr_is_present_ (const char *name, ffestpFile *spec); +static int ffestc_subr_speccmp_ (const char *string, ffestpFile *spec, + const char **target, int *length); static ffestvUnit ffestc_subr_unit_ (ffestpFile *spec); static void ffestc_try_shriek_do_ (void); @@ -5044,14 +5044,14 @@ ffestc_shriek_wherethen_ (bool ok) using "etc" as the pick-one-of-these string. */ static int -ffestc_subr_binsrch_ (char **list, int size, ffestpFile *spec, char *whine) +ffestc_subr_binsrch_ (const char **list, int size, ffestpFile *spec, const char *whine) { int lowest_tested; int highest_tested; int halfway; int offset; int c; - char *str; + const char *str; int len; if (size == 0) @@ -5186,7 +5186,7 @@ ffestc_subr_is_format_ (ffestpFile *spec) ffestc_subr_is_present_("SPECIFIER",&specifier); */ static bool -ffestc_subr_is_present_ (char *name, ffestpFile *spec) +ffestc_subr_is_present_ (const char *name, ffestpFile *spec) { if (spec->kw_or_val_present) { @@ -5219,7 +5219,7 @@ ffestc_subr_is_present_ (char *name, ffestpFile *spec) 0 if 2 is returned, the length of the constant string value otherwise. */ static int -ffestc_subr_speccmp_ (char *string, ffestpFile *spec, char **target, +ffestc_subr_speccmp_ (const char *string, ffestpFile *spec, const char **target, int *length) { ffebldConstant c; @@ -10000,6 +10000,10 @@ ffestc_R838 (ffelexToken label_token, ffebld target, return; ffestc_labeldef_branch_begin_ (); + /* Mark target symbol as target of an ASSIGN. */ + if (ffebld_op (target) == FFEBLD_opSYMTER) + ffesymbol_set_assigned (ffebld_symter (target), TRUE); + if (ffestc_labelref_is_assignable_ (label_token, &label)) ffestd_R838 (label, target); @@ -10198,7 +10202,7 @@ ffestc_R904 () { int i; int expect_file; - char *status_strs[] + const char *status_strs[] = { "New", @@ -10207,7 +10211,7 @@ ffestc_R904 () "Scratch", "Unknown" }; - char *access_strs[] + const char *access_strs[] = { "Append", @@ -10215,20 +10219,20 @@ ffestc_R904 () "Keyed", "Sequential" }; - char *blank_strs[] + const char *blank_strs[] = { "Null", "Zero" }; - char *carriagecontrol_strs[] + const char *carriagecontrol_strs[] = { "Fortran", "List", "None" }; - char *dispose_strs[] + const char *dispose_strs[] = { "Delete", @@ -10239,41 +10243,41 @@ ffestc_R904 () "Submit", "Submit/Delete" }; - char *form_strs[] + const char *form_strs[] = { "Formatted", "Unformatted" }; - char *organization_strs[] + const char *organization_strs[] = { "Indexed", "Relative", "Sequential" }; - char *position_strs[] + const char *position_strs[] = { "Append", "AsIs", "Rewind" }; - char *action_strs[] + const char *action_strs[] = { "Read", "ReadWrite", "Write" }; - char *delim_strs[] + const char *delim_strs[] = { "Apostrophe", "None", "Quote" }; - char *recordtype_strs[] + const char *recordtype_strs[] = { "Fixed", @@ -10283,7 +10287,7 @@ ffestc_R904 () "Stream_LF", "Variable" }; - char *pad_strs[] + const char *pad_strs[] = { "No", @@ -10453,7 +10457,7 @@ ffestc_R904 () void ffestc_R907 () { - char *status_strs[] + const char *status_strs[] = { "Delete", |