aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/parse.c
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2006-06-05 07:45:03 +0000
committerPaul Thomas <pault@gcc.gnu.org>2006-06-05 07:45:03 +0000
commit6690a9e079bf15d086d2805d00fea0e228cd7db9 (patch)
tree390b7c6a31468417e763f88ebe31b126efc05a4b /gcc/fortran/parse.c
parent86ad0dd600b5da40ac5c0ebd8dc230a603d3fce2 (diff)
downloadgcc-6690a9e079bf15d086d2805d00fea0e228cd7db9.zip
gcc-6690a9e079bf15d086d2805d00fea0e228cd7db9.tar.gz
gcc-6690a9e079bf15d086d2805d00fea0e228cd7db9.tar.bz2
re PR fortran/14067 (no warning when character data statement overflows declared size)
2006-06-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/14067 * data.c (create_character_intializer): Add warning message for truncated string. PR fortran/16943 * symbol.c : Include flags.h. (gfc_add_type): If a procedure and types are the same do not throw an error unless standard is less than gnu or pedantic. PR fortran/20838 * parse.c (parse_do_block): Error if named block do construct does not have a named enddo. PR fortran/27655 * check.c (gfc_check_associated): Pick up EXPR_NULL for pointer as well as target and put error return at end of function. 2006-06-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/14067 * gfortran.dg/data_char_1.f90: Add messages for truncated strings. PR fortran/16943 * gfortran.dg/func_decl_2.f90: New test. PR fortran/20838 * gfortran.dg/do_2.f90: New test. PR fortran/27655 * gfortran.dg/associated_3.f90: New test. From-SVN: r114385
Diffstat (limited to 'gcc/fortran/parse.c')
-rw-r--r--gcc/fortran/parse.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c
index 70c92b7..5b98d1d 100644
--- a/gcc/fortran/parse.c
+++ b/gcc/fortran/parse.c
@@ -2282,6 +2282,15 @@ loop:
break;
case ST_IMPLIED_ENDDO:
+ /* If the do-stmt of this DO construct has a do-construct-name,
+ the corresponding end-do must be an end-do-stmt (with a matching
+ name, but in that case we must have seen ST_ENDDO first).
+ We only complain about this in pedantic mode. */
+ if (gfc_current_block () != NULL)
+ gfc_error_now
+ ("named block DO at %L requires matching ENDDO name",
+ &gfc_current_block()->declared_at);
+
break;
default: