https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99651

--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> ---
The obvious idea to do:

  if (sym->attr.flavor == FL_UNKNOWN || sym->attr.flavor == FL_PROCEDURE)

in gfc_intrinsic_func_interface works, but has the side effect that for

  print *, allocated(f)

('f' is a function) of gfortran.dg/allocatable_scalar_11.f90
the error is generated by   resolve_generic_f's

  m = gfc_intrinsic_func_interface (expr, 0);
...
  if (m == MATCH_NO)
    gfc_error ("Generic function %qs at %L is not consistent with a "
               "specific intrinsic interface", expr->symtree->n.sym->name,

Without that 'obvious' patch, the error is generated by the call to
  check_specific (specific, expr, 0)
also within gfc_intrinsic_func_interface.

Reply via email to