------- Comment #1 from fxcoudert at gcc dot gnu dot org 2006-05-11 18:46 ------- The ICE is due to -Wunused-labels. We try to issue a warning about the label (already marked as an error because it contains a non-numeric character) being unused, but said label has no locus (because the parser errored out before assigning it.
Steve, I'm adding you in the CC list since you were the one who rewrote that codepath a few months ago, IIRC. I propose we strengthen the errorn in that case and also for the "Too many digits" and "Zero is not a valid label", by the following patch: Index: parse.c =================================================================== --- parse.c (revision 113671) +++ parse.c (working copy) @@ -439,6 +439,7 @@ if (!gfc_is_whitespace (c)) gfc_error_now ("Non-numeric character in statement label at %C"); + return ST_NONE; } else { -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fxcoudert at gcc dot gnu dot | |org, kargl at gcc dot gnu | |dot org AssignedTo|unassigned at gcc dot gnu |fxcoudert at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords| |error-recovery, patch Last reconfirmed|0000-00-00 00:00:00 |2006-05-11 18:46:22 date| | Summary|Testsuite ICE with -Wall |Testsuite ICE with -Wunused- | |labels http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27553