http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45076
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu.org --- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-08-23 14:14:26 UTC --- With 4.7 I get instead of an ICE just the warning: dynamic_dispatch_6.f03: In function ‘MAIN__’: dynamic_dispatch_6.f03:66:0: note: Skipping target new_periodic_5th_order with mismatching types for icall Cf. check_ic_target in value-prof.c. The sanity check makes sure that there is no ICE with indirect call targets. The note is printed after the following check: if (gimple_check_call_matching_types (call_stmt, target->decl)) return true; I have not checked whether that check should be true, though I somehow expect that it should be for this example.