- fprintf(out, "%s:%u:", pos->input_name, pos->lineno);
- if (show_column)
- fprintf(out, "%u:", (unsigned)pos->colno);
- fprintf(out, " %s: ", kind);
+ if (pos) {
+ fprintf(out, "%s:", pos->input_name);
+ if (pos->lineno != 0) {
+ fprintf(out, "%u:", pos->lineno);
+ if (show_column)
+ fprintf(out, "%u:", (unsigned)pos->colno);
+ }
+ fputc(' ', out);
+ }
+ fprintf(out, "%s: ", kind);