Index: diagnostic.c =================================================================== --- diagnostic.c (revision 202358) +++ diagnostic.c (working copy) @@ -245,6 +245,9 @@ diagnostic_build_prefix (diagnostic_context *conte (s.file == NULL ? build_message_string ("%s%s:%s %s%s%s", locus_cs, progname, locus_ce, text_cs, text, text_ce) + : !strcmp (s.file, N_("")) + ? build_message_string ("%s%s:%s %s%s%s", locus_cs, s.file, locus_ce, + text_cs, text, text_ce) : context->show_column ? build_message_string ("%s%s:%d:%d:%s %s%s%s", locus_cs, s.file, s.line, s.column, locus_ce, text_cs, text, text_ce) Index: testsuite/g++.dg/overload/new1.C =================================================================== --- testsuite/g++.dg/overload/new1.C (revision 202358) +++ testsuite/g++.dg/overload/new1.C (working copy) @@ -17,6 +17,5 @@ void f(X *x = new (3) X(6)); // { dg-error "" } void f(X *x = new (2) X[10]); // { dg-error "" } // { dg-message "candidate" "candidate note" { target *-*-* } 18 } -// { dg-message "operator new|candidate expects" "match candidate text" { target *-*-* } 00 } void f(X *x = new X[10][5]); // { dg-error "" }