https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120273
--- Comment #10 from Iain Sandoe <iains at gcc dot gnu.org> ---
Maybe something like this:
diff --git a/gcc/c-family/c-lex.cc b/gcc/c-family/c-lex.cc
index fef6ae6f457..43054f105ea 100644
--- a/gcc/c-family/c-lex.cc
+++ b/gcc/c-family/c-lex.cc
@@ -109,6 +109,10 @@ get_fileinfo (const char *name)
0,
splay_tree_delete_pointers);
+ /* If we have an UNKOWN_LOCATION, it has no filename. */
+ if (!name)
+ name = "<unknown file>";
+
n = splay_tree_lookup (file_info_tree, (splay_tree_key) name);
if (n)
return (struct c_fileinfo *) n->value;