diff options
author | Tobias Burnus <burnus@net-b.de> | 2011-08-24 15:11:08 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2011-08-24 15:11:08 +0200 |
commit | 40885767dcb0f8225450ab93d001fdf800cf4205 (patch) | |
tree | 9ad24c7dc71f8f332ea010635e201a3e6e1c9882 | |
parent | 9fcb758bdcc346b55cfd467e42f74881db5ab528 (diff) | |
download | gcc-40885767dcb0f8225450ab93d001fdf800cf4205.zip gcc-40885767dcb0f8225450ab93d001fdf800cf4205.tar.gz gcc-40885767dcb0f8225450ab93d001fdf800cf4205.tar.bz2 |
re PR fortran/50163 (ICE: initialization expression)
2011-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/50163
* expr.c (check_init_expr): Return when an error
occured.
2011-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/50163
* gfortran.dg/initialization_28.f90: New.
From-SVN: r178038
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/expr.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/initialization_28.f90 | 9 |
4 files changed, 22 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 7e8d1af..ed4dc77 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2011-08-24 Tobias Burnus <burnus@net-b.de> + + PR fortran/50163 + * expr.c (check_init_expr): Return when an error occured. + 2011-08-24 Joseph Myers <joseph@codesourcery.com> * Make-lang.in (fortran/cpp.o): Remove explicit compilation rule. diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index 9922094..b050b11 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -2481,6 +2481,9 @@ check_init_expr (gfc_expr *e) m = MATCH_ERROR; } + if (m == MATCH_ERROR) + return FAILURE; + /* Try to scalarize an elemental intrinsic function that has an array argument. */ isym = gfc_find_function (e->symtree->n.sym->name); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9664117..d140a43 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2011-08-24 Tobias Burnus <burnus@net-b.de> + + PR fortran/50163 + * gfortran.dg/initialization_28.f90: New. + 2011-08-24 Richard Guenther <rguenther@suse.de> PR tree-optimization/50067 diff --git a/gcc/testsuite/gfortran.dg/initialization_28.f90 b/gcc/testsuite/gfortran.dg/initialization_28.f90 new file mode 100644 index 0000000..f533053 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/initialization_28.f90 @@ -0,0 +1,9 @@ +! { dg-do compile } +! +! PR fortran/50163 +! +! Contributed by Philip Mason +! +character(len=2) :: xx ='aa' +integer :: iloc=index(xx,'bb') ! { dg-error "has not been declared or is a variable" } +end |