On Fri, 29 Sep 2017, nick wrote: > - error_at (EXPR_LOCATION (call_expr), "cannot tail-call: %s", reason); > + error_at (EXPR_LOCATION (call_expr), "cannot tail-call: %s", N_(reason));
This can't be right. N_ only makes sense around a string literal (e.g. in a constant initializer); it marks a string for extraction for translation, but does not cause it to be translated at runtime. You need _() to cause the translation at runtime (and then make sure that every string constant that can end up as a value of reason is surrounded by N_() - or just surround the string constants directly by _() if there isn't a reason that won't work). -- Joseph S. Myers jos...@codesourcery.com