diff options
author | Paul Thomas <pault@gcc.gnu.org> | 2008-01-20 16:58:15 +0000 |
---|---|---|
committer | Paul Thomas <pault@gcc.gnu.org> | 2008-01-20 16:58:15 +0000 |
commit | f5d67ede42caa6e1442a4776a4929a8a96907caf (patch) | |
tree | dd7f7e6e4030beee514d48db62d509810015d5dd /gcc/fortran/resolve.c | |
parent | bdf8f544b6775a6283d8f4cafcf50dd448e7be59 (diff) | |
download | gcc-f5d67ede42caa6e1442a4776a4929a8a96907caf.tar.gz |
re PR fortran/34861 (ICE in function with entry (and result?))
2008-01-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34861
* resolve.c (resolve_entries): Do not do an array bounds check
if the result symbols are the same.
PR fortran/34854
* module.c (read_module) : Hide the symtree of the previous
version of the symbol if this symbol is renamed.
2008-01-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/34784
* gfortran.dg/mapping_2.f90: Correct ubound expression for h4.
PR fortran/34861
* gfortran.dg/entry_array_specs_3.f90: New test.
PR fortran/34854
* gfortran.dg/use_rename_1.f90: New test.
From-SVN: r131679
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r-- | gcc/fortran/resolve.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 0c4946e67bd..38f8e647422 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -496,7 +496,8 @@ resolve_entries (gfc_namespace *ns) || (el->sym->result->attr.pointer != ns->entries->sym->result->attr.pointer)) break; - else if (as && fas && gfc_compare_array_spec (as, fas) == 0) + else if (as && fas && ns->entries->sym->result != el->sym->result + && gfc_compare_array_spec (as, fas) == 0) gfc_error ("Function %s at %L has entries with mismatched " "array specifications", ns->entries->sym->name, &ns->entries->sym->declared_at); |