> Greetings, > > I don't have write access so can someone commit this bug fix as it > fixes, > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80188. > > Author: Nicholas Krause <xerofo...@gmail.com> > Date: Fri Sep 29 11:39:46 2017 -0400 > > This patch fixes, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80188 > which reports that the char* pointer reason is not being translated > properly when the error message from the function, > maybe_complain_about_tail_call arises. Fix it by wrapping it in the > N_ macro to translate to the proper language of the user. No new > test cases are required due to the triviality of the bug. > > diff --git a/gcc/calls.c b/gcc/calls.c > index 6bd025ed197..cfdd6b2cf6b 100644 > --- a/gcc/calls.c > +++ b/gcc/calls.c > @@ -1516,7 +1516,7 @@ maybe_complain_about_tail_call (tree call_expr, const char *reason) > if (!CALL_EXPR_MUST_TAIL_CALL (call_expr)) > return; > > - error_at (EXPR_LOCATION (call_expr), "cannot tail-call: %s", reason); > + error_at (EXPR_LOCATION (call_expr), "cannot tail-call: %s", N_(reason)); > } > > /* Fill in ARGS_SIZE and ARGS array based on the parameters found in > > Thanks, > > Nick
No, this does obviously not fix the problem. The main problem is that po/gcc.pot does contain the "cannot tail-call" string but not the various reasons for it, so the translators have noting to translate. You should wrap all strings that need to be translated in N_, and where you do use N_ you should use _(reason). So that make -C gcc gcc.pot picks them up when the gcc.pot is created, which is only done on request, but it would be good to check that the gcc.pot file looks right with your patch at least. But most importantly a patch like this is worthless when it was not tested, so the minimum is you have to state that you did bootstrap with your patch and the test suite did not produce any new failures that were not there without your patch. Bernd.