From: Jerry DeLisle Date: Wed, 24 Jan 2007 01:56:55 +0000 (+0000) Subject: [multiple changes] X-Git-Tag: releases/gcc-4.3.0~7300 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cecc123540c8207c0cd2bee1e8cca3a27ea1c428;p=thirdparty%2Fgcc.git [multiple changes] 2007-01-23 Jerry DeLisle PR fortran/30532 * scanner.c (load_line): Remove check fot ctrl-z and don't gobble. 2007-01-23 Paul Thomas PR fortran/30481 * match.c (gfc_match_namelist): Add check for assumed size character in namelist and provide error if found. From-SVN: r121099 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 5c602b6f7570..2659bd427a45 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,14 @@ +2007-01-23 Jerry DeLisle + + PR fortran/30532 + * scanner.c (load_line): Remove check fot ctrl-z and don't gobble. + +2007-01-23 Paul Thomas + + PR fortran/30481 + * match.c (gfc_match_namelist): Add check for assumed size character + in namelist and provide error if found. + 2007-01-21 Brooks Moses * intrinsic.texi (ACHAR): Added cross-references. diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index 0fa1f634204a..941e625c142e 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -2591,7 +2591,7 @@ gfc_match_namelist (void) && gfc_add_in_namelist (&sym->attr, sym->name, NULL) == FAILURE) goto error; - /* Use gfc_error_check here, rather than goto error, so that this + /* Use gfc_error_check here, rather than goto error, so that these are the only errors for the next two lines. */ if (sym->as && sym->as->type == AS_ASSUMED_SIZE) { @@ -2600,6 +2600,13 @@ gfc_match_namelist (void) gfc_error_check (); } + if (sym->ts.type == BT_CHARACTER && sym->ts.cl->length == NULL) + { + gfc_error ("Assumed character length '%s' in namelist '%s' at " + "%C is not allowed", sym->name, group_name->name); + gfc_error_check (); + } + if (sym->as && sym->as->type == AS_ASSUMED_SHAPE && gfc_notify_std (GFC_STD_GNU, "Assumed shape array '%s' in " "namelist '%s' at %C is an extension.", diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index 95d2e81da3b3..8667fbc67674 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -1064,13 +1064,6 @@ load_line (FILE *input, char **pbuf, int *pbuflen) if (c == '\0') continue; - if (c == '\032') - { - /* Ctrl-Z ends the file. */ - while (fgetc (input) != EOF); - break; - } - /* Check for illegal use of ampersand. See F95 Standard 3.3.1.3. */ if (c == '&') seen_ampersand = 1;