This is a test release of GNU gettext.

When sending a bug report about this release to a GNU mailing list or
bug tracker, please mention the precise version, e.g. using
  git describe HEAD

Note that test release numbers cannot be given as argument to the "autopoint"
program. Therefore please don't use the "gettextize" program of this test
release on projects which you share with other programmers via CVS.
