diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-02-29 22:50:25 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-02-29 22:50:25 +0000 |
commit | 44000dbbe05896777b4781f5c274272c15097861 (patch) | |
tree | 6b8d4f59dabb468ef7b4fe96a4195f38a77e215b /gcc/fortran/decl.c | |
parent | c17ee676e55b86d2c9d61b569a8c7e0cd8fb6d4c (diff) | |
download | gcc-44000dbbe05896777b4781f5c274272c15097861.zip gcc-44000dbbe05896777b4781f5c274272c15097861.tar.gz gcc-44000dbbe05896777b4781f5c274272c15097861.tar.bz2 |
re PR fortran/35059 (Seg fault when max constructor limit reached)
2008-02-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/35059
* expr.c (find_array_element): Modify traversing the constructor to
avoid trying to access NULL memory pointed to by next for the
last element. (find_array_section): Exit while loop if cons->next is
NULL.
* trans-expr.c (gfc_conv_scalar_char_value): Initialize gfc_typespec.
(gfc_conv_function_call): Same.
* decl.c (gfc_match_implicit): Same.
* trans-intrinsic.c (gfc_conv_intrinsic_sr_kind): Same.
From-SVN: r132782
Diffstat (limited to 'gcc/fortran/decl.c')
-rw-r--r-- | gcc/fortran/decl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c index d830687..892c80a 100644 --- a/gcc/fortran/decl.c +++ b/gcc/fortran/decl.c @@ -2506,6 +2506,8 @@ gfc_match_implicit (void) int c; match m; + gfc_clear_ts (&ts); + /* We don't allow empty implicit statements. */ if (gfc_match_eos () == MATCH_YES) { |