------- Comment #2 from burnus at gcc dot gnu dot org 2010-08-22 11:02 ------- Note: The ABSTRACT, the INTERFACE (vs. host-association), and the use-association of i_f do not seem to play a role.
In particular for p: sym->attr.pure == 0 sym->attr.proc_pointer == 1 sym->ts.interface->attr.pure == 1 The problems seems to be that resolve_symbol is called later than the resolve_formal_arglist check for pureness, i.e. one first checks whether "p" is pure before one copies the attr.pure from ts.interface->attr.pure - which explains the failure. I leave the fixing to Janus. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45366