https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104134
--- Comment #9 from Martin Sebor <msebor at gcc dot gnu.org> ---
The code uses the M_ macro:
pp_printf (pp, M_("<unnamed %s>"), variety);
on my machine it expands into:
pp_printf (pp, ((cxx_pp)->translate_identifiers ? gettext ("<unnamed %s>") :
("<unnamed %s>")), variety);
and GCC doesn't warn most likely because the front end doesn't see through the
complex expressio. If I remove the M_ it does warn. So in the FreeBSD build
the M_() macro probably expands to its argument (the string) which GCC then
warns on.