summaryrefslogtreecommitdiffstats
path: root/gcc/fortran/resolve.c
diff options
context:
space:
mode:
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-18 12:48:37 +0000
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-18 12:48:37 +0000
commitd5aa86b8a33d11a7f5af02f54c73717888b43793 (patch)
treeec5ef02923b8c25783183f624b111244cb04dff8 /gcc/fortran/resolve.c
parent017ca7aed690bbcd6521bf5be7dbc6cb8b58d6ad (diff)
downloadppe42-gcc-d5aa86b8a33d11a7f5af02f54c73717888b43793.tar.gz
ppe42-gcc-d5aa86b8a33d11a7f5af02f54c73717888b43793.zip
2007-10-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33233 * resolve.c (check_host_association): Check singly contained namespaces and start search for symbol in current namespace. 2007-10-18 Paul Thomas <pault@gcc.gnu.org> PR fortran/33233 * gfortran.dg/host_assoc_function_1.f90: Correct references. * gfortran.dg/host_assoc_function_3.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129437 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r--gcc/fortran/resolve.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index f16fe281772..dffa76e0cff 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -4014,11 +4014,12 @@ check_host_association (gfc_expr *e)
return retval;
if (gfc_current_ns->parent
- && gfc_current_ns->parent->parent
&& old_sym->ns != gfc_current_ns)
{
- gfc_find_symbol (old_sym->name, gfc_current_ns->parent, 1, &sym);
- if (sym && old_sym != sym && sym->attr.flavor == FL_PROCEDURE)
+ gfc_find_symbol (old_sym->name, gfc_current_ns, 1, &sym);
+ if (sym && old_sym != sym
+ && sym->attr.flavor == FL_PROCEDURE
+ && sym->attr.contained)
{
temp_locus = gfc_current_locus;
gfc_current_locus = e->where;
OpenPOWER on IntegriCloud