aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2006-05-11 23:37:10 +0200
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2006-05-11 21:37:10 +0000
commite983d070ffe4b39f128988ca3797cfaad6f8a695 (patch)
tree7e085765a5e3ad17e44bb368597dc8ba53ca7821
parent64c90367183dc7bfe3fa2b8b73b3b0d4bb828ba3 (diff)
downloadgcc-e983d070ffe4b39f128988ca3797cfaad6f8a695.zip
gcc-e983d070ffe4b39f128988ca3797cfaad6f8a695.tar.gz
gcc-e983d070ffe4b39f128988ca3797cfaad6f8a695.tar.bz2
re PR fortran/27553 ([4.1 only] Testsuite ICE with -Wunused-labels)
PR fortran/27553 * parse.c (next_free): Return instead of calling decode_statement upon error. * gfortran.dg/label_5.f90: New test. From-SVN: r113712
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/parse.c1
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/label_5.f906
4 files changed, 18 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 9fbde4d..c301e3e 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2006-05-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/27553
+ * parse.c (next_free): Return instead of calling decode_statement
+ upon error.
+
2005-05-10 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/27470
diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c
index 2f358e8..70c92b7 100644
--- a/gcc/fortran/parse.c
+++ b/gcc/fortran/parse.c
@@ -439,6 +439,7 @@ next_free (void)
if (!gfc_is_whitespace (c))
gfc_error_now ("Non-numeric character in statement label at %C");
+ return ST_NONE;
}
else
{
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index e118354..434baf5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-05-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/27553
+ * gfortran.dg/label_5.f90: New test.
+
2006-05-11 Joseph S. Myers <joseph@codesourcery.com>
* lib/target-supports.exp (check_effective_target_powerpc_fprs,
diff --git a/gcc/testsuite/gfortran.dg/label_5.f90 b/gcc/testsuite/gfortran.dg/label_5.f90
new file mode 100644
index 0000000..1082465
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/label_5.f90
@@ -0,0 +1,6 @@
+! { dg-do compile }
+! { dg-options "-Wall" }
+! PR fortran/27553
+program pr27553
+10: a=10 ! { dg-error "character in statement" }
+end program