https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67429
--- Comment #10 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- (In reply to Paul Thomas from comment #7) > The patch for PR65045 is the simplest manifestation that I have found. I am > very grateful to Dominique for posting this PR because the problem has been > driving me crazy. I assumed that it was my patches that were wrong. However, > Dominique proved by going through different revisions that the December 2014 > patches to error.c are the culprits. (In reply to Dominique d'Humieres from comment #0) > Error: Expecting END BLOCK statement at (1) > (null):0: confused by earlier errors, bailing out Even if *I* cannot reproduce this, such an error should be easy to debug: Just put a break in diagnostic_report_diagnostic on the line that gives this message and go up to find out what triggered this code to run. My guess is that you are somehow triggering an ICE while reporting an ICE. It would be interesting to understand where that strange location comes from (I guess it is UNKNOWN_LOCATION?). And also to harden that code to not try to print a null s.file pointer!