On Thu, May 05, 2022 at 09:31:41AM -0500, Eric Blake via austin-group-l at The 
Open Group wrote:
> Hello GNU and Illumos folks,
> 
> The Austin Group (those in charge of the POSIX specification) have
> been working on a draft to incorporate the gettext(3) family of
> functions and related gettext(1) utilities into the next revision of
> POSIX (per https://austingroupbugs.net/view.php?id=1122).  After
> several months of near-weekly conference calls, the latest draft of
> the work has finally reached the point where it is ready for more
> thorough analysis by a wider group of readers.  You can view the
> current state of the draft here:
> 
> https://posix.rhansen.org/p/gettext_draft

Another question came up today (line 1172 in the draft at the time I
wrote this email).  Given the following test file test.c:

#include <libintl.h>
#include <stdio.h>
int main(){
  printf("%s\n",dgettext("foobar","test"));
}

Running "xgettext test.c", on Solaris, the resulting .po file is
called "foobar.po" and contains the msgid "test". Running it on GNU,
the resulting .po file is called "messages.po" and there is no
indication that the msgid belongs to "foobar". According to the L18nux
specification, the Solaris behavior is intended. Why does GNU xgettext
deviate?

Knowing whether this is considered a bug that future GNU xgettext will
fix, vs. intentional behavior that the standard should purposefully
not constrain, can impact what wording is chosen for the standard here.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org

Reply via email to