From 9a13dc48a3ac3282aaf9a77516b4f02faa60e393 Mon Sep 17 00:00:00 2001 From: Andre Vehreschild Date: Mon, 17 Mar 2025 08:24:04 +0100 Subject: Fortran: Fix comp call in associate [PR119272] PR fortran/119272 gcc/fortran/ChangeLog: * resolve.cc (resolve_compcall): Postpone error report when symbol is not resolved yet for component call resolve. gcc/testsuite/ChangeLog: * gfortran.dg/associate_74.f90: New test. --- gcc/fortran/resolve.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gcc/fortran') diff --git a/gcc/fortran/resolve.cc b/gcc/fortran/resolve.cc index ddd9827..b9c469a 100644 --- a/gcc/fortran/resolve.cc +++ b/gcc/fortran/resolve.cc @@ -7351,8 +7351,9 @@ resolve_compcall (gfc_expr* e, const char **name) /* Check that's really a FUNCTION. */ if (!e->value.compcall.tbp->function) { - gfc_error ("%qs at %L should be a FUNCTION", - e->value.compcall.name, &e->where); + if (e->symtree && e->symtree->n.sym->resolve_symbol_called) + gfc_error ("%qs at %L should be a FUNCTION", e->value.compcall.name, + &e->where); return false; } -- cgit v1.1