On Thu, 16 Feb 2017, Jakub Jelinek wrote: > > #define SPEC_MESSAGE(msg) msg > > > > "... %e" SPEC_MESSAGE ("Message") "} ..." > > > > and then only handling SPEC_MESSAGE specially in exgettext, rather than %e? > > We have over 90 of these, plus it would make the specs even harder to read. > Will defer this to Joseph anyway.
The general design in GCC is to keep down the number of places where explicit markup for translation is needed. Thus the "msgid" convention for parameter naming to avoid lots of explicit _() (see ABOUT-GCC-NLS, though it may be out of date), and thus the detection of %e / %n. So I think one of the local fixes to avoid this particular case being misdetected as a spec string should be preferred. -- Joseph S. Myers jos...@codesourcery.com