http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53704
--- Comment #10 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-06-20 08:57:20 UTC --- > The failures are gone with the patch in comment #5 (why not > DW_LANG_Fortran95?). However it looks more like papering over the problem > rather than really fixing it: The kludge is already in function_possibly_abstracted_p, the patch only fixes an obvious oversight for Darwin. > as said in comment #0, the ICE in is gone if I comment one of the "if (.not. > equal ...", but comes back if after that, I duplicate the "call foo ...". In > addition the test passes on powerpc-apple-darwin9.8.0, but yields several > warnings (not seen for the original tests in gfortran.dg) > > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 > warning: DWARFDebugInfoEntry::AppendDependants() -- check on this item > TAG_subrange_type: attr = AT_upper_bound form = FORM_ref4 Thanks for the testing. I'm afraid I cannot have access to a Darwin 9 box so, if this doesn't show up on Darwin 10, someone else will need to have a look. I presume that some code guarded by is_fortran will also need to be guarded by a check on the DWARF version/strictness.