From: Tobias Schlüter Date: Sat, 4 Jun 2005 10:26:57 +0000 (+0200) Subject: array.c (gfc_match_array_constructor): Disallow empty array constructor. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ab21e2722dbe3f0677fcd2f8acc6ce078ae09a94;p=gcc.git array.c (gfc_match_array_constructor): Disallow empty array constructor. fortran/ 2005-06-03 Tobias Schl"uter Erik Edelmann * array.c (gfc_match_array_constructor): Disallow empty array constructor. testsuite/ 2005-06-04 Erik Edelmann * gfortran.dg/array_constructor_3.f90: New test. From-SVN: r100579 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 8327b51b763..bc0fa79d7de 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2005-06-03 Tobias Schl"uter + Erik Edelmann + + * array.c (gfc_match_array_constructor): Disallow empty array + constructor. + 2005-06-03 Jerry DeLisle * fortran/intrinsic.texi: Add documentation for diff --git a/gcc/fortran/array.c b/gcc/fortran/array.c index f6284408567..3d90a55833f 100644 --- a/gcc/fortran/array.c +++ b/gcc/fortran/array.c @@ -887,7 +887,10 @@ gfc_match_array_constructor (gfc_expr ** result) head = tail = NULL; if (gfc_match (end_delim) == MATCH_YES) - goto empty; /* Special case */ + { + gfc_error ("Empty array constructor at %C is not allowed"); + goto cleanup; + } for (;;) { @@ -911,7 +914,6 @@ gfc_match_array_constructor (gfc_expr ** result) if (gfc_match (end_delim) == MATCH_NO) goto syntax; -empty: expr = gfc_get_expr (); expr->expr_type = EXPR_ARRAY; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 78a2f571460..acbdca22ea2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2005-06-04 Erik Edelmann + + * gfortran.dg/array_constructor_3.f90: New test. + 2005-06-04 Tobias Schl"uter * gfortran.dg/ret_pointer_1.f90: Un-XFAIL. diff --git a/gcc/testsuite/gfortran.dg/array_constructor_3.f90 b/gcc/testsuite/gfortran.dg/array_constructor_3.f90 new file mode 100644 index 00000000000..7ddd1f4191f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/array_constructor_3.f90 @@ -0,0 +1,5 @@ +! { dg-do compile } +! Check that empty array constructors are rejected +program hum + print *, (//) { dg-error "Empty array constructor" } +end program hum