http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47081

           Summary: Macro usage too clever for localization
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: goe...@uddeborg.se


In gcc/gentype-state.c there is a macro like this:

#define fatal_reading_state_printf(Tok,Fmt,...) do {    \
...
      fatal ("%s:%d:%d: Invalid state file; " Fmt,    \

Normally, the first argument to fatal() is extracted for localization.  But
that extraction apparently fails here.  Each usage of the macro will create a
unique format string to fatal().  But the extractor for localization only
extracts the invariant part that is in the macro, "%s:%d:%d: Invalid state
file; ".  That will never be the string looked up for translation at run time. 
And the strings actually looked up are not available in the pot file.

Seen in the po file distributed for 4.6-b20101218.

Reply via email to