texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]


From: Patrice Dumas
Date: Sat, 30 Dec 2023 04:08:33 -0500 (EST)

branch: master
commit 9cec29b4b6e26a365313fc875731009e2e3a62a9
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Fri Dec 29 23:46:56 2023 +0100

    Add gnulib modules for XS
    
    * tp/Texinfo/XS:
    Run "gnulib-tool --add-import unistr/u8-strmbtouc 
unictype/property-join-control unictype/property-alphabetic unictype/category-M 
unictype/category-Nd".
---
 ChangeLog                                          |   7 +
 tp/Texinfo/XS/gnulib/lib/Makefile.am               |  49 +-
 tp/Texinfo/XS/gnulib/lib/stdlib.in.h               |   8 +
 tp/Texinfo/XS/gnulib/lib/striconveh.c              |   2 +-
 tp/Texinfo/XS/gnulib/lib/unictype/categ_M.c        |  27 +
 tp/Texinfo/XS/gnulib/lib/unictype/categ_M.h        | 628 +++++++++++++++
 tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.c       |  35 +
 tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.h       | 415 ++++++++++
 tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.c  |  43 +
 tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.h  | 881 +++++++++++++++++++++
 .../XS/gnulib/lib/unictype/pr_join_control.c       |  55 ++
 .../XS/gnulib/lib/unictype/pr_join_control.h       | 180 +++++
 tp/Texinfo/XS/gnulib/lib/unistd.in.h               |  31 +-
 tp/Texinfo/XS/gnulib/lib/vasnprintf.c              |  52 +-
 tp/Texinfo/XS/gnulib/lib/wchar.in.h                |  18 +
 tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4            |  10 +
 tp/Texinfo/XS/gnulib/m4/gnulib-common.m4           |  22 +-
 tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4             |  22 +
 tp/Texinfo/XS/gnulib/m4/math_h.m4                  |  13 +-
 tp/Texinfo/XS/gnulib/m4/printf.m4                  | 180 +++--
 tp/Texinfo/XS/gnulib/m4/unistd_h.m4                |   3 +-
 tp/Texinfo/XS/gnulib/m4/vasnprintf.m4              |  19 +-
 tp/Texinfo/XS/gnulib/m4/wchar_h.m4                 |   3 +-
 23 files changed, 2588 insertions(+), 115 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 456b7a42c6..c973934fb3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2023-12-29  Patrice Dumas  <pertusus@free.fr>
+
+       Add gnulib modules for XS
+
+       * tp/Texinfo/XS:
+       Run "gnulib-tool --add-import unistr/u8-strmbtouc 
unictype/property-join-control unictype/property-alphabetic unictype/category-M 
unictype/category-Nd".
+
 2023-12-29  Patrice Dumas  <pertusus@free.fr>
 
        * tp/Texinfo/XS/convert/convert_html.c (convert_math_command)
diff --git a/tp/Texinfo/XS/gnulib/lib/Makefile.am 
b/tp/Texinfo/XS/gnulib/lib/Makefile.am
index 29731496ae..13739c9b70 100644
--- a/tp/Texinfo/XS/gnulib/lib/Makefile.am
+++ b/tp/Texinfo/XS/gnulib/lib/Makefile.am
@@ -46,9 +46,13 @@
 #  uniconv/u8-strconv-from-enc \
 #  uniconv/u8-strconv-to-enc \
 #  unictype/category-L \
+#  unictype/category-M \
 #  unictype/category-Mn \
+#  unictype/category-Nd \
 #  unictype/category-test \
 #  unictype/ctype-upper \
+#  unictype/property-alphabetic \
+#  unictype/property-join-control \
 #  uninorm/nfc \
 #  uninorm/nfkd \
 #  uninorm/u8-normalize \
@@ -57,6 +61,7 @@
 #  unistr/u8-mbtouc \
 #  unistr/u8-next \
 #  unistr/u8-strlen \
+#  unistr/u8-strmbtouc \
 #  unistr/u8-uctomb \
 #  uniwidth/u8-strwidth \
 #  uniwidth/u8-width \
@@ -1027,9 +1032,7 @@ EXTRA_DIST += streq.h
 ## begin gnulib module striconveh
 
 libgnu_la_SOURCES += striconveh.h striconveh.c
-if GL_COND_LIBTOOL
 libgnu_la_LDFLAGS += $(LTLIBICONV)
-endif
 
 EXTRA_DIST += iconveh.h
 
@@ -1620,6 +1623,16 @@ EXTRA_DIST += unictype/categ_L.h
 
 ## end   gnulib module unictype/category-L
 
+## begin gnulib module unictype/category-M
+
+if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_M
+libgnu_la_SOURCES += unictype/categ_M.c
+endif
+
+EXTRA_DIST += unictype/categ_M.h
+
+## end   gnulib module unictype/category-M
+
 ## begin gnulib module unictype/category-Mn
 
 if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_MN
@@ -1630,6 +1643,16 @@ EXTRA_DIST += unictype/categ_Mn.h
 
 ## end   gnulib module unictype/category-Mn
 
+## begin gnulib module unictype/category-Nd
+
+if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ND
+libgnu_la_SOURCES += unictype/categ_Nd.c
+endif
+
+EXTRA_DIST += unictype/categ_Nd.h
+
+## end   gnulib module unictype/category-Nd
+
 ## begin gnulib module unictype/category-test
 
 if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_TEST
@@ -1660,6 +1683,26 @@ EXTRA_DIST += unictype/bitmap.h unictype/ctype_upper.h
 
 ## end   gnulib module unictype/ctype-upper
 
+## begin gnulib module unictype/property-alphabetic
+
+if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_ALPHABETIC
+libgnu_la_SOURCES += unictype/pr_alphabetic.c
+endif
+
+EXTRA_DIST += unictype/bitmap.h unictype/pr_alphabetic.h
+
+## end   gnulib module unictype/property-alphabetic
+
+## begin gnulib module unictype/property-join-control
+
+if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_JOIN_CONTROL
+libgnu_la_SOURCES += unictype/pr_join_control.c
+endif
+
+EXTRA_DIST += unictype/bitmap.h unictype/pr_join_control.h
+
+## end   gnulib module unictype/property-join-control
+
 ## begin gnulib module unictype/property-soft-dotted
 
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_SOFT_DOTTED
@@ -1956,6 +1999,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status 
$(CXXDEFS_H) $(ARG_NONNULL_H
              -e 's|@''REPLACE_EXECVP''@|$(REPLACE_EXECVP)|g' \
              -e 's|@''REPLACE_EXECVPE''@|$(REPLACE_EXECVPE)|g' \
              -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \
+             -e 's|@''REPLACE_FCHDIR''@|$(REPLACE_FCHDIR)|g' \
              -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \
              -e 's|@''REPLACE_FDATASYNC''@|$(REPLACE_FDATASYNC)|g' \
              -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \
@@ -2295,6 +2339,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status 
$(CXXDEFS_H) $(ARG_NONNULL_H)
              -e 's/@''GNULIB_WCSTOK''@/$(GL_GNULIB_WCSTOK)/g' \
              -e 's/@''GNULIB_WCSWIDTH''@/$(GL_GNULIB_WCSWIDTH)/g' \
              -e 's/@''GNULIB_WCSFTIME''@/$(GL_GNULIB_WCSFTIME)/g' \
+             -e 's/@''GNULIB_WGETCWD''@/$(GL_GNULIB_WGETCWD)/g' \
              -e 's/@''GNULIB_MDA_WCSDUP''@/$(GL_GNULIB_MDA_WCSDUP)/g' \
              -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \
              < $(srcdir)/wchar.in.h > $@-t1
diff --git a/tp/Texinfo/XS/gnulib/lib/stdlib.in.h 
b/tp/Texinfo/XS/gnulib/lib/stdlib.in.h
index b9838c7d5e..b27d2c08c6 100644
--- a/tp/Texinfo/XS/gnulib/lib/stdlib.in.h
+++ b/tp/Texinfo/XS/gnulib/lib/stdlib.in.h
@@ -1047,6 +1047,10 @@ _GL_CXXALIAS_RPL (putenv, int, (char *string));
 #   define putenv _putenv
 #  endif
 _GL_CXXALIAS_MDA (putenv, int, (char *string));
+# elif defined __KLIBC__
+/* Need to cast, because on OS/2 kLIBC, the first parameter is
+                                     const char *string.  */
+_GL_CXXALIAS_SYS_CAST (putenv, int, (char *string));
 # else
 _GL_CXXALIAS_SYS (putenv, int, (char *string));
 # endif
@@ -1063,6 +1067,10 @@ _GL_CXXALIASWARN (putenv);
 /* Need to cast, because on mingw, the parameter is either
    'const char *string' or 'char *string'.  */
 _GL_CXXALIAS_MDA_CAST (putenv, int, (char *string));
+# elif defined __KLIBC__
+/* Need to cast, because on OS/2 kLIBC, the first parameter is
+                                     const char *string.  */
+_GL_CXXALIAS_SYS_CAST (putenv, int, (char *string));
 # else
 _GL_CXXALIAS_SYS (putenv, int, (char *string));
 # endif
diff --git a/tp/Texinfo/XS/gnulib/lib/striconveh.c 
b/tp/Texinfo/XS/gnulib/lib/striconveh.c
index 0209dc6cf2..be60407373 100644
--- a/tp/Texinfo/XS/gnulib/lib/striconveh.c
+++ b/tp/Texinfo/XS/gnulib/lib/striconveh.c
@@ -810,7 +810,7 @@ mem_cd_iconveh_internal (const char *src, size_t srclen,
 
                         if (handler == iconveh_escape_sequence)
                           {
-                            static char hex[16] = "0123456789ABCDEF";
+                            static char const hex[16] = "0123456789ABCDEF";
                             scratchlen = 0;
                             scratchbuf[scratchlen++] = '\\';
                             if (uc < 0x10000)
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.c 
b/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.c
new file mode 100644
index 0000000000..1bb27e526c
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.c
@@ -0,0 +1,27 @@
+/* Categories of Unicode characters.
+   Copyright (C) 2002, 2006-2007, 2009-2023 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2002.
+
+   This file is free software: you can redistribute it and/or modify
+   it under the terms of the GNU Lesser General Public License as
+   published by the Free Software Foundation; either version 2.1 of the
+   License, or (at your option) any later version.
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "unictype.h"
+
+/* Define u_categ_M table.  */
+#include "categ_M.h"
+
+const uc_general_category_t UC_CATEGORY_M =
+  { UC_CATEGORY_MASK_M, 0, { &u_categ_M } };
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.h 
b/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.h
new file mode 100644
index 0000000000..508b137d5c
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/categ_M.h
@@ -0,0 +1,628 @@
+/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
+/* Categories of Unicode characters.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */
+
+/* Copyright (C) 2000-2022 Free Software Foundation, Inc.
+
+   This file is free software: you can redistribute it and/or modify
+   it under the terms of the GNU Lesser General Public License as
+   published by the Free Software Foundation; either version 2.1 of the
+   License, or (at your option) any later version.
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#define header_0 16
+#define header_2 9
+#define header_3 127
+#define header_4 15
+static const
+struct
+  {
+    int header[1];
+    int level1[15];
+    short level2[3 << 7];
+    unsigned int level3[47 << 4];
+  }
+u_categ_M =
+{
+  { 15 },
+  {
+       16 * sizeof (int) / sizeof (short) +     0,
+       16 * sizeof (int) / sizeof (short) +   128,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 * sizeof (int) / sizeof (short) +   256
+  },
+  {
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +     0,
+       16 +   384 * sizeof (short) / sizeof (int) +    16,
+       16 +   384 * sizeof (short) / sizeof (int) +    32,
+       16 +   384 * sizeof (short) / sizeof (int) +    48,
+       16 +   384 * sizeof (short) / sizeof (int) +    64,
+       16 +   384 * sizeof (short) / sizeof (int) +    80,
+       16 +   384 * sizeof (short) / sizeof (int) +    96,
+       16 +   384 * sizeof (short) / sizeof (int) +   112,
+       16 +   384 * sizeof (short) / sizeof (int) +   128,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   144,
+       16 +   384 * sizeof (short) / sizeof (int) +   160,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   192,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   208,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   224,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   240,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   256,
+       16 +   384 * sizeof (short) / sizeof (int) +   272,
+       16 +   384 * sizeof (short) / sizeof (int) +   288,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   304,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   320,
+       16 +   384 * sizeof (short) / sizeof (int) +   336,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   368,
+       16 +   384 * sizeof (short) / sizeof (int) +   384,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   560,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   576,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   592,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   608,
+       16 +   384 * sizeof (short) / sizeof (int) +   624,
+       16 +   384 * sizeof (short) / sizeof (int) +   640,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   656,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   672,
+       16 +   384 * sizeof (short) / sizeof (int) +   688,
+       16 +   384 * sizeof (short) / sizeof (int) +   704,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   720,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   736,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1
+  },
+  {
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x000003F8U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFE0000U, 0xBFFFFFFFU, 0x000000B6U, 0x00000000U,
+    0x07FF0000U, 0x00000000U, 0xFFFFF800U, 0x00010000U,
+    0x00000000U, 0x00000000U, 0x9FC00000U, 0x00003D9FU,
+    0x00020000U, 0xFFFF0000U, 0x000007FFU, 0x00000000U,
+    0x00000000U, 0x0001FFC0U, 0x00000000U, 0x200FF800U,
+    0xFBC00000U, 0x00003EEFU, 0x0E000000U, 0x00000000U,
+    0xFF000000U, 0x00000000U, 0xFFFFFC00U, 0xFFFFFFFBU,
+    0x0000000FU, 0xDC000000U, 0x00FEFFFFU, 0x0000000CU,
+    0x0000000EU, 0xD0000000U, 0x0080399FU, 0x4000000CU,
+    0x0000000EU, 0xD0000000U, 0x00023987U, 0x00230000U,
+    0x0000000EU, 0xD0000000U, 0x00003BBFU, 0xFC00000CU,
+    0x0000000EU, 0xD0000000U, 0x00E0399FU, 0x0000000CU,
+    0x00000004U, 0xC0000000U, 0x00803DC7U, 0x00000000U,
+    0x0000001FU, 0xD0000000U, 0x00603DDFU, 0x0000000CU,
+    0x0000000EU, 0xD0000000U, 0x00603DDFU, 0x0008000CU,
+    0x0000000FU, 0xD8000000U, 0x00803DDFU, 0x0000000CU,
+    0x0000000EU, 0x00000000U, 0xFF5F8400U, 0x000C0000U,
+    0x00000000U, 0x07F20000U, 0x00007F80U, 0x00000000U,
+    0x00000000U, 0x1FF20000U, 0x00007F00U, 0x00000000U,
+    0x03000000U, 0xC2A00000U, 0x00000000U, 0xFFFE0000U,
+    0xFEFFE0DFU, 0x1FFFFFFFU, 0x00000040U, 0x00000000U,
+    0x00000000U, 0x7FFFF800U, 0xC3C00000U, 0x001E3F9DU,
+    0x3C00BFFCU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xE0000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x003C0000U, 0x001C0000U, 0x000C0000U, 0x000C0000U,
+    0x00000000U, 0xFFF00000U, 0x200FFFFFU, 0x00000000U,
+    0x0000B800U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000060U, 0x00000200U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x0FFF0FFFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x0F800000U, 0x00000000U, 0x7FE00000U, 0x9FFFFFFFU,
+    0x00000000U, 0xFFFF0000U, 0x00007FFFU, 0x00000000U,
+    0x0000001FU, 0xFFF00000U, 0x0000001FU, 0x000FF800U,
+    0x00000007U, 0x00003FFEU, 0x00000000U, 0x000FFFC0U,
+    0x00000000U, 0x00FFFFF0U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFF70000U, 0x039021FFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFF0000U, 0x0001FFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00038000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x80000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0xFFFFFFFFU,
+    0x00000000U, 0x0000FC00U, 0x00000000U, 0x00000000U,
+    0x06000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x3FF78000U,
+    0xC0000000U, 0x00000000U, 0x00000000U, 0x00030000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000844U, 0x000010F8U, 0x00000000U, 0x00000000U,
+    0x00000003U, 0xFFF00000U, 0x0000003FU, 0x8003FFFFU,
+    0x00000000U, 0x00003FC0U, 0x000FFF80U, 0x00000000U,
+    0x0000000FU, 0xFFF80000U, 0x00000001U, 0x00000020U,
+    0x00000000U, 0x007FFE00U, 0x00003008U, 0x38000000U,
+    0x00000000U, 0xC19D0000U, 0x00000002U, 0x0060F800U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x000037F8U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x40000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x0000FFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x20000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000001U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x07C00000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x0000F06EU, 0x87000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000060U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x000000F0U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00001800U, 0x00000000U, 0xE0000000U,
+    0x00000000U, 0x00000000U, 0x0001FFC0U, 0x00000000U,
+    0x0000003CU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000007U, 0xFF000000U, 0x0000007FU, 0x80190000U,
+    0x00000007U, 0x07FF0000U, 0x00000004U, 0x00000000U,
+    0x00000007U, 0x001FFF80U, 0x00000060U, 0x00080000U,
+    0x00000007U, 0xFFF80000U, 0x0000DE01U, 0x00000000U,
+    0x00000000U, 0x40FFF000U, 0x00000002U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x80000000U, 0x000007FFU,
+    0x0000000FU, 0xD8000000U, 0x0080399FU, 0x001F1FCCU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFFE00000U, 0x4000007FU, 0x00000000U,
+    0x00000000U, 0xFFFF0000U, 0x0000000FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFF3F8000U, 0x30000001U, 0x00000000U,
+    0x00000000U, 0xFFFF0000U, 0x00000001U, 0x00000000U,
+    0x00000000U, 0x00FFF800U, 0x00000000U, 0x00000000U,
+    0xE0000000U, 0x00000FFFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x07FFF000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x79BF0000U, 0x0000000DU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFCFE0000U, 0x00000011U,
+    0x000007FEU, 0x7BF80000U, 0x0FFE0080U, 0x00000000U,
+    0x03FFFC00U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFF7F8000U, 0x00000000U, 0x00000000U,
+    0xFFFC0000U, 0x007FFEFFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xB47E0000U, 0x000000BFU, 0x00000000U,
+    0x00FB7C00U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00780000U,
+    0x0000000BU, 0xC7F00000U, 0x00000007U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x003FFF81U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x001F0000U,
+    0x00000000U, 0x007F0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFE8000U, 0xFFFFFFFFU,
+    0x000780FFU, 0x00000000U, 0x00000000U, 0x00030010U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x60000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFF3FFFU, 0x0000007FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0xF807E3E0U,
+    0x00000FE7U, 0x00003C00U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x0000001CU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xF87FFFFFU, 0xFFFFFFFFU, 0x00201FFFU,
+    0xF8000010U, 0x0000FFFEU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xF9FFFF7FU, 0x000007DBU, 0x00000000U, 0x00000000U,
+    0x00008000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x007F0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00004000U, 0x00000000U, 0x0000F000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000F000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x007F0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x000007F0U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU
+  }
+};
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.c 
b/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.c
new file mode 100644
index 0000000000..1bf231fa4f
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.c
@@ -0,0 +1,35 @@
+/* Categories of Unicode characters.
+   Copyright (C) 2002, 2006-2007, 2009-2023 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2002.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "unictype.h"
+
+/* Define u_categ_Nd table.  */
+#include "categ_Nd.h"
+
+const uc_general_category_t UC_CATEGORY_Nd =
+  { UC_CATEGORY_MASK_Nd, 0, { &u_categ_Nd } };
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.h 
b/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.h
new file mode 100644
index 0000000000..43831d0169
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/categ_Nd.h
@@ -0,0 +1,415 @@
+/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
+/* Categories of Unicode characters.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */
+
+/* Copyright (C) 2000-2022 Free Software Foundation, Inc.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#define header_0 16
+#define header_2 9
+#define header_3 127
+#define header_4 15
+static const
+struct
+  {
+    int header[1];
+    int level1[2];
+    short level2[2 << 7];
+    unsigned int level3[27 << 4];
+  }
+u_categ_Nd =
+{
+  { 2 },
+  {
+        3 * sizeof (int) / sizeof (short) +     0,
+        3 * sizeof (int) / sizeof (short) +   128
+  },
+  {
+        3 +   256 * sizeof (short) / sizeof (int) +     0,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    16,
+        3 +   256 * sizeof (short) / sizeof (int) +    32,
+        3 +   256 * sizeof (short) / sizeof (int) +    48,
+        3 +   256 * sizeof (short) / sizeof (int) +    48,
+        3 +   256 * sizeof (short) / sizeof (int) +    64,
+        3 +   256 * sizeof (short) / sizeof (int) +    80,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
+        3 +   256 * sizeof (short) / sizeof (int) +   128,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
+        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+       -1,
+       -1
+  },
+  {
+    0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U,
+    0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU,
+    0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x0000FFC0U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x03FF03FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF03FFU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x03FF0000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x03FF0000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x0000FFC0U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U,
+    0x00000000U, 0xFFC00000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U,
+    0x00000000U, 0x03FF0000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x000003FFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x000003FFU,
+    0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x03FF0000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFFC000U, 0xFFFFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x000003FFU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x03FF0000U
+  }
+};
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.c 
b/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.c
new file mode 100644
index 0000000000..3c8fa491ac
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.c
@@ -0,0 +1,43 @@
+/* Properties of Unicode characters.
+   Copyright (C) 2002, 2006-2007, 2009-2023 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2002.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "unictype.h"
+
+#include "bitmap.h"
+
+/* Define u_property_alphabetic table.  */
+#include "pr_alphabetic.h"
+
+bool
+uc_is_property_alphabetic (ucs4_t uc)
+{
+  return bitmap_lookup (&u_property_alphabetic, uc);
+}
+
+const uc_property_t UC_PROPERTY_ALPHABETIC =
+  { &uc_is_property_alphabetic };
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.h 
b/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.h
new file mode 100644
index 0000000000..645d8c7aec
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/pr_alphabetic.h
@@ -0,0 +1,881 @@
+/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
+/* Properties of Unicode characters.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */
+
+/* Copyright (C) 2000-2022 Free Software Foundation, Inc.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#define header_0 16
+#define header_2 9
+#define header_3 127
+#define header_4 15
+static const
+struct
+  {
+    int header[1];
+    int level1[4];
+    short level2[4 << 7];
+    unsigned int level3[79 << 4];
+  }
+u_property_alphabetic =
+{
+  { 4 },
+  {
+        5 * sizeof (int) / sizeof (short) +     0,
+        5 * sizeof (int) / sizeof (short) +   128,
+        5 * sizeof (int) / sizeof (short) +   256,
+        5 * sizeof (int) / sizeof (short) +   384
+  },
+  {
+        5 +   512 * sizeof (short) / sizeof (int) +     0,
+        5 +   512 * sizeof (short) / sizeof (int) +    16,
+        5 +   512 * sizeof (short) / sizeof (int) +    32,
+        5 +   512 * sizeof (short) / sizeof (int) +    48,
+        5 +   512 * sizeof (short) / sizeof (int) +    64,
+        5 +   512 * sizeof (short) / sizeof (int) +    80,
+        5 +   512 * sizeof (short) / sizeof (int) +    96,
+        5 +   512 * sizeof (short) / sizeof (int) +   112,
+        5 +   512 * sizeof (short) / sizeof (int) +   128,
+        5 +   512 * sizeof (short) / sizeof (int) +   144,
+        5 +   512 * sizeof (short) / sizeof (int) +   160,
+        5 +   512 * sizeof (short) / sizeof (int) +   176,
+        5 +   512 * sizeof (short) / sizeof (int) +   192,
+        5 +   512 * sizeof (short) / sizeof (int) +   208,
+        5 +   512 * sizeof (short) / sizeof (int) +   224,
+        5 +   512 * sizeof (short) / sizeof (int) +   240,
+        5 +   512 * sizeof (short) / sizeof (int) +   256,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   272,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   288,
+        5 +   512 * sizeof (short) / sizeof (int) +   304,
+        5 +   512 * sizeof (short) / sizeof (int) +   320,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   352,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   368,
+        5 +   512 * sizeof (short) / sizeof (int) +   384,
+        5 +   512 * sizeof (short) / sizeof (int) +   400,
+        5 +   512 * sizeof (short) / sizeof (int) +   416,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   432,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   448,
+        5 +   512 * sizeof (short) / sizeof (int) +   464,
+        5 +   512 * sizeof (short) / sizeof (int) +   480,
+        5 +   512 * sizeof (short) / sizeof (int) +   496,
+        5 +   512 * sizeof (short) / sizeof (int) +   512,
+        5 +   512 * sizeof (short) / sizeof (int) +   528,
+        5 +   512 * sizeof (short) / sizeof (int) +   544,
+        5 +   512 * sizeof (short) / sizeof (int) +   560,
+        5 +   512 * sizeof (short) / sizeof (int) +   576,
+        5 +   512 * sizeof (short) / sizeof (int) +   592,
+        5 +   512 * sizeof (short) / sizeof (int) +   608,
+        5 +   512 * sizeof (short) / sizeof (int) +   624,
+        5 +   512 * sizeof (short) / sizeof (int) +   640,
+        5 +   512 * sizeof (short) / sizeof (int) +   656,
+        5 +   512 * sizeof (short) / sizeof (int) +   672,
+        5 +   512 * sizeof (short) / sizeof (int) +   688,
+        5 +   512 * sizeof (short) / sizeof (int) +   704,
+        5 +   512 * sizeof (short) / sizeof (int) +   720,
+        5 +   512 * sizeof (short) / sizeof (int) +   736,
+        5 +   512 * sizeof (short) / sizeof (int) +   752,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   768,
+        5 +   512 * sizeof (short) / sizeof (int) +   784,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   800,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   816,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   832,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   848,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   864,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   880,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   896,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   912,
+        5 +   512 * sizeof (short) / sizeof (int) +   928,
+        5 +   512 * sizeof (short) / sizeof (int) +   944,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   960,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   976,
+        5 +   512 * sizeof (short) / sizeof (int) +   992,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +  1008,
+        5 +   512 * sizeof (short) / sizeof (int) +  1024,
+        5 +   512 * sizeof (short) / sizeof (int) +  1040,
+        5 +   512 * sizeof (short) / sizeof (int) +  1056,
+        5 +   512 * sizeof (short) / sizeof (int) +  1072,
+        5 +   512 * sizeof (short) / sizeof (int) +  1088,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +  1104,
+        5 +   512 * sizeof (short) / sizeof (int) +  1120,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1136,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1152,
+        5 +   512 * sizeof (short) / sizeof (int) +  1168,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1184,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1200,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1216,
+       -1,
+       -1,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1232,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +   336,
+        5 +   512 * sizeof (short) / sizeof (int) +  1248,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1
+  },
+  {
+    0x00000000U, 0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU,
+    0x00000000U, 0x04200400U, 0xFF7FFFFFU, 0xFF7FFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0003FFC3U, 0x0000501FU,
+    0x00000000U, 0x00000000U, 0x00000020U, 0xBCDF0000U,
+    0xFFFFD740U, 0xFFFFFFFBU, 0xFFFFFFFFU, 0xFFBFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFC03U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFEFFFFU, 0x027FFFFFU, 0xFFFFFFFFU,
+    0x000001FFU, 0xBFFF0000U, 0xFFFF00B6U, 0x000787FFU,
+    0x07FF0000U, 0xFFFFFFFFU, 0xFEFFFFFFU, 0xFFFFC000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FEFFFFFU, 0x9C00E1FEU,
+    0xFFFF0000U, 0xFFFFFFFFU, 0xFFFFE000U, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x0003FFFFU, 0xFFFFFC00U, 0x043007FFU,
+    0xFCFFFFFFU, 0x00001FFFU, 0x01FFFFFFU, 0xFFFF07FFU,
+    0x00007EFFU, 0xFFFFFFFFU, 0xFFF003FFU, 0xFFFF03F8U,
+    0xFFFFFFFFU, 0xEFFFFFFFU, 0xFFE1DFFFU, 0xFFFE000FU,
+    0xFFF99FEFU, 0xE3C5FDFFU, 0xB080599FU, 0x1003000FU,
+    0xFFF987EEU, 0xC36DFDFFU, 0x5E021987U, 0x003F0000U,
+    0xFFFBBFEEU, 0xE3EDFDFFU, 0x00011BBFU, 0x1E00000FU,
+    0xFFF99FEEU, 0xE3EDFDFFU, 0xB0C0199FU, 0x0002000FU,
+    0xD63DC7ECU, 0xC3FFC718U, 0x00811DC7U, 0x00000000U,
+    0xFFFDDFFFU, 0xE3FFFDFFU, 0x27601DDFU, 0x0000000FU,
+    0xFFFDDFEFU, 0xE3EFFDFFU, 0x60601DDFU, 0x000E000FU,
+    0xFFFDDFFFU, 0xE7FFFFFFU, 0x80F05DDFU, 0xFC00000FU,
+    0xFC7FFFEEU, 0x2FFBFFFFU, 0xFF5F807FU, 0x000C0000U,
+    0xFFFFFFFEU, 0x07FFFFFFU, 0x0000207FU, 0x00000000U,
+    0xFFFFF7D6U, 0x3BFFFFAFU, 0xF000205FU, 0x00000000U,
+    0x00000001U, 0x00000000U, 0xFFFFFEFFU, 0xFFFE1FFFU,
+    0xFEFFFF0FU, 0x1FFFFFFFU, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xF97FFFFFU, 0xFFFF0000U, 0xFFFFFFFFU,
+    0x3C00FFFFU, 0xFFFFFFFFU, 0xFFFF20BFU, 0xF7FFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x3D7F3DFFU, 0xFFFFFFFFU,
+    0xFFFF3DFFU, 0x7F3DFFFFU, 0xFF7FFF3DU, 0xFFFFFFFFU,
+    0xFF3DFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU, 0x00000000U,
+    0x0000FFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x3F3FFFFFU,
+    0xFFFFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF9FFFU,
+    0x07FFFFFEU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x01FFC7FFU,
+    0x800FFFFFU, 0x000FFFFFU, 0x000FFFFFU, 0x000DDFFFU,
+    0xFFFFFFFFU, 0xFFCFFFFFU, 0x108001FFU, 0x00000000U,
+    0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x01FFFFFFU,
+    0xFFFFFFFFU, 0xFFFF07FFU, 0xFFFFFFFFU, 0x003FFFFFU,
+    0x7FFFFFFFU, 0x01FF0FFFU, 0xFFFF0000U, 0x001F3FFFU,
+    0xFFFFFFFFU, 0xFFFF0FFFU, 0x000003FFU, 0x00000000U,
+    0x0FFFFFFFU, 0xFFFFFFFFU, 0x7FFFFFFFU, 0x001FFFFEU,
+    0x00000000U, 0x80000080U, 0x00007001U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFEFFFFFU, 0x00001FEFU, 0x00000000U,
+    0xFFFFFFFFU, 0xFC00F3FFU, 0xFFFFFFFFU, 0x0003FFBFU,
+    0xFFFFFFFFU, 0x007FFFFFU, 0xFC00E000U, 0x3FFFFFFFU,
+    0xFFFF01FFU, 0xE7FFFFFFU, 0x00000000U, 0x046FDE00U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x001FFF80U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x3F3FFFFFU, 0xFFFFFFFFU, 0xAAFF3F3FU, 0x3FFFFFFFU,
+    0xFFFFFFFFU, 0x5FDFFFFFU, 0x0FCF1FDCU, 0x1FDC1FFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x80020000U,
+    0x1FFF0000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x3E2FFC84U, 0xF3FFBD50U, 0x000043E0U, 0xFFFFFFFFU,
+    0x000001FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFFC00000U, 0xFFFFFFFFU, 0x000003FFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000C781FU,
+    0xFFFFFFFFU, 0xFFFF20BFU, 0xFFFFFFFFU, 0x000080FFU,
+    0x007FFFFFU, 0x7F7F7F7FU, 0x7F7F7F7FU, 0xFFFFFFFFU,
+    0x00000000U, 0x00008000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x000000E0U, 0x1F3E03FEU, 0xFFFFFFFEU, 0xFFFFFFFFU,
+    0xE07FFFFFU, 0xFFFFFFFEU, 0xFFFFFFFFU, 0xF7FFFFFFU,
+    0xFFFFFFE0U, 0xFFFEFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x00007FFFU, 0xFFFFFFFFU, 0x00000000U, 0xFFFF0000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x00001FFFU, 0x00000000U, 0xFFFF0000U, 0x3FFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFF1FFFU, 0x00000C00U, 0xFFFFFFFFU, 0x8FF07FFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU,
+    0xFF800000U, 0xFFFFFFFCU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFF9FFU, 0xFFFFFFFFU, 0x03EB07FFU, 0xFFFC0000U,
+    0xFFFFFFBFU, 0x000000FFU, 0xFFFFFFFFU, 0x000FFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000002FU, 0xE8FC0000U,
+    0xFFFFFC00U, 0xFFFF07FFU, 0x0007FFFFU, 0x1FFFFFFFU,
+    0xFFFFFFFFU, 0xFFF7FFFFU, 0x00008000U, 0x7C00FFFFU,
+    0xFFFFFFFFU, 0x007FFFFFU, 0x00003FFFU, 0xFC7FFFFFU,
+    0xFFFFFFFFU, 0x7FFFFFFFU, 0x38000005U, 0x003CFFFFU,
+    0x007E7E7EU, 0xFFFF7F7FU, 0xF7FFFFFFU, 0xFFFF03FFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x000007FFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFF000FU, 0xFFFFF87FU, 0x0FFFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF3FFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x03FFFFFFU, 0x00000000U,
+    0xE0F8007FU, 0x5F7FFDFFU, 0xFFFFFFDBU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x0003FFFFU, 0xFFF80000U, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x3FFFFFFFU, 0xFFFF0000U, 0xFFFFFFFFU,
+    0xFFFCFFFFU, 0xFFFFFFFFU, 0x000000FFU, 0x0FFF0000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0xFFDF0000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFFFFFFU,
+    0x00000000U, 0x07FFFFFEU, 0x07FFFFFEU, 0xFFFFFFC0U,
+    0xFFFFFFFFU, 0x7FFFFFFFU, 0x1CFCFCFCU, 0x00000000U,
+    0xFFFFEFFFU, 0xB7FFFF7FU, 0x3FFF3FFFU, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x07FFFFFFU,
+    0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0x001FFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x1FFFFFFFU, 0xFFFFFFFFU, 0x0001FFFFU, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFE000U, 0xFFFF07FFU, 0x07FFFFFFU,
+    0x3FFFFFFFU, 0xFFFFFFFFU, 0x003EFF0FU, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x3FFFFFFFU, 0xFFFF0000U, 0xFF0FFFFFU, 0x0FFFFFFFU,
+    0xFFFFFFFFU, 0xFFFF00FFU, 0xFFFFFFFFU, 0xF7FF000FU,
+    0xFFB7F7FFU, 0x1BFBFFFBU, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x007FFFFFU, 0x003FFFFFU, 0x000000FFU,
+    0xFFFFFFBFU, 0x07FDFFFFU, 0x00000000U, 0x00000000U,
+    0xFFFFFD3FU, 0x91BFFFFFU, 0x003FFFFFU, 0x007FFFFFU,
+    0x7FFFFFFFU, 0x00000000U, 0x00000000U, 0x0037FFFFU,
+    0x003FFFFFU, 0x03FFFFFFU, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xC0FFFFFFU, 0x00000000U, 0x00000000U,
+    0xFEEFF06FU, 0x003FFFFFU, 0x00000000U, 0x1FFFFFFFU,
+    0x1FFFFFFFU, 0x00000000U, 0xFFFFFEFFU, 0x0000001FU,
+    0xFFFFFFFFU, 0x003FFFFFU, 0x003FFFFFU, 0x0007FFFFU,
+    0x0003FFFFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x000001FFU, 0x00000000U,
+    0xFFFFFFFFU, 0x0007FFFFU, 0xFFFFFFFFU, 0x0007FFFFU,
+    0xFFFFFFFFU, 0x000000FFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x00031BFFU, 0x00000000U, 0x00000000U,
+    0x1FFFFFFFU, 0xFFFF0080U, 0x0000003FU, 0xFFFF0000U,
+    0x00000003U, 0xFFFF0000U, 0x0000001FU, 0x007FFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000003FU, 0x003E0000U,
+    0xFFFFFFFFU, 0x01FFFFFFU, 0xFFFF0004U, 0x000001FFU,
+    0xFFFFFFFFU, 0x0007FFFFU, 0xFFFF00F0U, 0x0047FFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x1400C01EU, 0x00000000U,
+    0xFFFBFFFFU, 0xC09FFFFFU, 0x00000003U, 0x00000000U,
+    0xBFFFBD7FU, 0xFFFF01FFU, 0xFFFFFFFFU, 0x000001FFU,
+    0xFFF99FEFU, 0xE3EDFDFFU, 0xE081199FU, 0x0000000FU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x800007BBU, 0x00000003U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x000000B3U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x7F3FFFFFU, 0x3F000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x7FFFFFFFU, 0x00000011U, 0x00000000U,
+    0xFFFFFFFFU, 0x013FFFFFU, 0x00000000U, 0x00000000U,
+    0xE7FFFFFFU, 0x000007FFU, 0x0000007FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x01FFFFFFU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x80000000U,
+    0xFF6FF27FU, 0x99BFFFFFU, 0x00000007U, 0x00000000U,
+    0x00000000U, 0xFFFFFCFFU, 0xFCFFFFFFU, 0x0000001AU,
+    0xFFFFFFFFU, 0x7FE7FFFFU, 0xFFFF0000U, 0xFFFFFFFFU,
+    0x20FFFFFFU, 0xFFFF0000U, 0xFFFFFFFFU, 0x01FFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFDFFU, 0x7F7FFFFFU, 0x00000001U, 0xFFFC0000U,
+    0xFFFCFFFFU, 0x007FFEFFU, 0x00000000U, 0x00000000U,
+    0xFFFFFB7FU, 0xB47FFFFFU, 0x000000CBU, 0xFFFFFDBFU,
+    0x017B7FFFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x007FFFFFU,
+    0xFFFDFFFFU, 0xC7FFFFFFU, 0x00000001U, 0x00000000U,
+    0x00000000U, 0x00010000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x03FFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00007FFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000000FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFF0000U, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0001FFFFU,
+    0xFFFFFFFFU, 0x0000FFFFU, 0x0000007EU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000007FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x01FFFFFFU, 0x7FFFFFFFU, 0xFFFF0000U,
+    0xFFFFFFFFU, 0x7FFFFFFFU, 0xFFFF0000U, 0x00003FFFU,
+    0xFFFFFFFFU, 0x0000FFFFU, 0x0000000FU, 0xE0FFFFF8U,
+    0x0000FFFFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF87FFU, 0xFFFFFFFFU,
+    0xFFFF80FFU, 0x00000000U, 0x00000000U, 0x0003000BU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00FFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U,
+    0x000001FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x6FEF0000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x00040007U, 0x00270000U, 0xFFFF00F0U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0FFFFFFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x1FFF07FFU,
+    0x43FF01FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFDFFFFFU, 0xFFFFFFFFU,
+    0xDFFFFFFFU, 0xEBFFDE64U, 0xFFFFFFEFU, 0xFFFFFFFFU,
+    0xDFDFE7BFU, 0x7BFFFFFFU, 0xFFFDFC5FU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFF3FU, 0xF7FFFFFDU, 0xF7FFFFFFU,
+    0xFFDFFFFFU, 0xFFDFFFFFU, 0xFFFF7FFFU, 0xFFFF7FFFU,
+    0xFFFFFDFFU, 0xFFFFFDFFU, 0x00000FF7U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x7FFFFFFFU, 0x000007E0U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xF9FFFF7FU, 0xFFFF07DBU, 0xFFFFFFFFU, 0x00003FFFU,
+    0x00008000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0x3F801FFFU, 0x00004000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFF0000U, 0x00003FFFU, 0xFFFFFFFFU, 0x00000FFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0xFFFF0000U, 0x00000FFFU,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x7FFF6F7FU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000001FU, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000088FU, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFEFU, 0x0AF7FE96U, 0xAA96EA84U, 0x5EF7F796U,
+    0x0FFFFBFFU, 0x0FFFFBEEU, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0xFFFF0000U, 0xFFFF03FFU, 0xFFFF03FFU,
+    0x000003FFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x03FFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0x3FFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFF0003U, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000001U,
+    0x3FFFFFFFU, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF07FFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU,
+    0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, 0x00000000U
+  }
+};
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.c 
b/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.c
new file mode 100644
index 0000000000..202f2a3af7
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.c
@@ -0,0 +1,55 @@
+/* Properties of Unicode characters.
+   Copyright (C) 2002, 2006-2007, 2009-2023 Free Software Foundation, Inc.
+   Written by Bruno Haible <bruno@clisp.org>, 2002.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+
+/* Specification.  */
+#include "unictype.h"
+
+#if 0
+
+#include "bitmap.h"
+
+/* Define u_property_join_control table.  */
+#include "pr_join_control.h"
+
+bool
+uc_is_property_join_control (ucs4_t uc)
+{
+  return bitmap_lookup (&u_property_join_control, uc);
+}
+
+#else
+
+bool
+uc_is_property_join_control (ucs4_t uc)
+{
+  return (uc >= 0x200C && uc <= 0x200D);
+}
+
+#endif
+
+const uc_property_t UC_PROPERTY_JOIN_CONTROL =
+  { &uc_is_property_join_control };
diff --git a/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.h 
b/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.h
new file mode 100644
index 0000000000..3bbfe38953
--- /dev/null
+++ b/tp/Texinfo/XS/gnulib/lib/unictype/pr_join_control.h
@@ -0,0 +1,180 @@
+/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
+/* Properties of Unicode characters.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0.  */
+
+/* Copyright (C) 2000-2022 Free Software Foundation, Inc.
+
+   This file is free software.
+   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
+   You can redistribute it and/or modify it under either
+     - the terms of the GNU Lesser General Public License as published
+       by the Free Software Foundation, either version 3, or (at your
+       option) any later version, or
+     - the terms of the GNU General Public License as published by the
+       Free Software Foundation; either version 2, or (at your option)
+       any later version, or
+     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+
+   This file is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License and the GNU General Public License
+   for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License and of the GNU General Public License along with this
+   program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#define header_0 16
+#define header_2 9
+#define header_3 127
+#define header_4 15
+static const
+struct
+  {
+    int header[1];
+    int level1[1];
+    short level2[1 << 7];
+    unsigned int level3[1 << 4];
+  }
+u_property_join_control =
+{
+  { 1 },
+  {     2 * sizeof (int) / sizeof (short) +     0 },
+  {
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        2 +   128 * sizeof (short) / sizeof (int) +     0,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1
+  },
+  {
+    0x00003000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U,
+    0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U
+  }
+};
diff --git a/tp/Texinfo/XS/gnulib/lib/unistd.in.h 
b/tp/Texinfo/XS/gnulib/lib/unistd.in.h
index 2ae040a76b..96453c90fd 100644
--- a/tp/Texinfo/XS/gnulib/lib/unistd.in.h
+++ b/tp/Texinfo/XS/gnulib/lib/unistd.in.h
@@ -971,23 +971,28 @@ _GL_WARN_ON_USE (faccessat, "faccessat is not portable - "
    Return 0 if successful, otherwise -1 and errno set.
    See the POSIX:2008 specification
    <https://pubs.opengroup.org/onlinepubs/9699919799/functions/fchdir.html>.  
*/
-# if ! @HAVE_FCHDIR@
+# if @REPLACE_FCHDIR@
+#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+#   undef fchdir
+#   define fchdir rpl_fchdir
+#  endif
+_GL_FUNCDECL_RPL (fchdir, int, (int /*fd*/));
+_GL_CXXALIAS_RPL (fchdir, int, (int /*fd*/));
+# else
+#  if !@HAVE_FCHDIR@ || !@HAVE_DECL_FCHDIR@
 _GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/));
-
+#  endif
+_GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/));
+# endif
+_GL_CXXALIASWARN (fchdir);
+# if @REPLACE_FCHDIR@ || !@HAVE_FCHDIR@
 /* Gnulib internal hooks needed to maintain the fchdir metadata.  */
 _GL_EXTERN_C int _gl_register_fd (int fd, const char *filename)
      _GL_ARG_NONNULL ((2));
 _GL_EXTERN_C void _gl_unregister_fd (int fd);
 _GL_EXTERN_C int _gl_register_dup (int oldfd, int newfd);
 _GL_EXTERN_C const char *_gl_directory_name (int fd);
-
-# else
-#  if !@HAVE_DECL_FCHDIR@
-_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/));
-#  endif
 # endif
-_GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/));
-_GL_CXXALIASWARN (fchdir);
 #elif defined GNULIB_POSIXCHECK
 # undef fchdir
 # if HAVE_RAW_DECL_FCHDIR
@@ -1113,10 +1118,10 @@ _GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - "
    or SIZE was too small.
    See the POSIX:2008 specification
    <https://pubs.opengroup.org/onlinepubs/9699919799/functions/getcwd.html>.
-   Additionally, the gnulib module 'getcwd' guarantees the following GNU
-   extension: If BUF is NULL, an array is allocated with 'malloc'; the array
-   is SIZE bytes long, unless SIZE == 0, in which case it is as big as
-   necessary.  */
+   Additionally, the gnulib module 'getcwd' or 'getcwd-lgpl' guarantees the
+   following GNU extension: If BUF is NULL, an array is allocated with
+   'malloc'; the array is SIZE bytes long, unless SIZE == 0, in which case
+   it is as big as necessary.  */
 # if @REPLACE_GETCWD@
 #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
 #   define getcwd rpl_getcwd
diff --git a/tp/Texinfo/XS/gnulib/lib/vasnprintf.c 
b/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
index 2d9aa977ec..2cfdbe97bd 100644
--- a/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
+++ b/tp/Texinfo/XS/gnulib/lib/vasnprintf.c
@@ -294,7 +294,7 @@ local_wcsnlen (const wchar_t *s, size_t maxlen)
 static size_t
 wctomb_fallback (char *s, wchar_t wc)
 {
-  static char hex[16] = "0123456789ABCDEF";
+  static char const hex[16] = "0123456789ABCDEF";
 
   s[0] = '\\';
   if (sizeof (wchar_t) > 2 && wc > 0xffff)
@@ -5622,24 +5622,24 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
               {
                 arg_type type = a.arg[dp->arg_index].type;
                 int flags = dp->flags;
-#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 int has_width;
 #endif
-#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || 
USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || 
USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 size_t width;
 #endif
-#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || 
!HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && 
MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST 
|| NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
+#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || 
!HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && 
MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST 
|| NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
                 int has_precision;
                 size_t precision;
 #endif
-#if NEED_PRINTF_UNBOUNDED_PRECISION
+#if NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 int prec_ourselves;
 #else
 #               define prec_ourselves 0
 #endif
 #if (WIDE_CHAR_VERSION && MUSL_LIBC) || NEED_PRINTF_FLAG_LEFTADJUST
 #               define pad_ourselves 1
-#elif !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#elif !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 int pad_ourselves;
 #else
 #               define pad_ourselves 0
@@ -5654,10 +5654,10 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
                 TCHAR_T *tmp;
 #endif
 
-#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 has_width = 0;
 #endif
-#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || 
USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || 
USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 width = 0;
                 if (dp->width_start != dp->width_end)
                   {
@@ -5685,13 +5685,13 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
                           width = xsum (xtimes (width, 10), *digitp++ - '0');
                         while (digitp != dp->width_end);
                       }
-# if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+# if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                     has_width = 1;
 # endif
                   }
 #endif
 
-#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || 
!HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && 
MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST 
|| NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
+#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || 
!HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && 
MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST 
|| NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
                 has_precision = 0;
                 precision = 6;
                 if (dp->precision_start != dp->precision_end)
@@ -5724,9 +5724,10 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
 #endif
 
                 /* Decide whether to handle the precision ourselves.  */
-#if NEED_PRINTF_UNBOUNDED_PRECISION
+#if NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                 switch (dp->conversion)
                   {
+# if NEED_PRINTF_UNBOUNDED_PRECISION
                   case 'd': case 'i': case 'u':
                   case 'b':
                   #if SUPPORT_GNU_PRINTF_DIRECTIVES \
@@ -5734,9 +5735,21 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
                   case 'B':
                   #endif
                   case 'o':
-                  case 'x': case 'X': case 'p':
                     prec_ourselves = has_precision && (precision > 0);
                     break;
+# endif
+                  case 'x': case 'X': case 'p':
+                    prec_ourselves =
+                      has_precision
+                      && (0
+# if NEED_PRINTF_FLAG_ALT_PRECISION_ZERO
+                          || (precision == 0)
+# endif
+# if NEED_PRINTF_UNBOUNDED_PRECISION
+                          || (precision > 0)
+# endif
+                         );
+                    break;
                   default:
                     prec_ourselves = 0;
                     break;
@@ -5744,7 +5757,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
 #endif
 
                 /* Decide whether to perform the padding ourselves.  */
-#if !((WIDE_CHAR_VERSION && MUSL_LIBC) || NEED_PRINTF_FLAG_LEFTADJUST) && 
(!DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION)
+#if !((WIDE_CHAR_VERSION && MUSL_LIBC) || NEED_PRINTF_FLAG_LEFTADJUST) && 
(!DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION)
                 switch (dp->conversion)
                   {
 # if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO
@@ -6508,7 +6521,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
                       }
 #endif
 
-#if NEED_PRINTF_UNBOUNDED_PRECISION
+#if NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                     if (prec_ourselves)
                       {
                         /* Handle the precision.  */
@@ -6568,6 +6581,15 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
 
                             count += insert;
                           }
+# if NEED_PRINTF_FLAG_ALT_PRECISION_ZERO
+                        else if (precision == 0
+                                 && move == 1
+                                 && prec_ptr[prefix_count] == '0')
+                          {
+                            /* Replace the "0" result with an empty string.  */
+                            count = prefix_count;
+                          }
+# endif
                       }
 #endif
 
@@ -6722,7 +6744,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
                     /* Here count <= allocated - length.  */
 
                     /* Perform padding.  */
-#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_UNBOUNDED_PRECISION
+#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || 
NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || 
NEED_PRINTF_FLAG_ALT_PRECISION_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION
                     if (pad_ourselves && has_width)
                       {
                         size_t w;
diff --git a/tp/Texinfo/XS/gnulib/lib/wchar.in.h 
b/tp/Texinfo/XS/gnulib/lib/wchar.in.h
index f1bbff6b94..f114bce3f1 100644
--- a/tp/Texinfo/XS/gnulib/lib/wchar.in.h
+++ b/tp/Texinfo/XS/gnulib/lib/wchar.in.h
@@ -1684,6 +1684,24 @@ _GL_WARN_ON_USE (wcsftime, "wcsftime is unportable - "
 #endif
 
 
+#if @GNULIB_WGETCWD@ && (defined _WIN32 && !defined __CYGWIN__)
+/* Gets the name of the current working directory.
+   (a) If BUF is non-NULL, it is assumed to have room for SIZE wide characters.
+       This function stores the working directory (NUL-terminated) in BUF and
+       returns BUF.
+   (b) If BUF is NULL, an array is allocated with 'malloc'.  The array is SIZE
+       wide characters long, unless SIZE == 0, in which case it is as big as
+       necessary.
+   If the directory couldn't be determined or SIZE was too small, this function
+   returns NULL and sets errno.  For a directory of length LEN, SIZE should be
+   >= LEN + 3 in case (a) or >= LEN + 1 in case (b).
+   Possible errno values include:
+     - ERANGE if SIZE is too small.
+     - ENOMEM if the memory could no be allocated.  */
+_GL_FUNCDECL_SYS (wgetcwd, wchar_t *, (wchar_t *buf, size_t size));
+#endif
+
+
 #endif /* _@GUARD_PREFIX@_WCHAR_H */
 #endif /* _@GUARD_PREFIX@_WCHAR_H */
 #endif
diff --git a/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4 
b/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
index 001bfc65d2..41e8d42a49 100644
--- a/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
+++ b/tp/Texinfo/XS/gnulib/m4/gnulib-cache.m4
@@ -51,9 +51,13 @@
 #  uniconv/u8-strconv-from-enc \
 #  uniconv/u8-strconv-to-enc \
 #  unictype/category-L \
+#  unictype/category-M \
 #  unictype/category-Mn \
+#  unictype/category-Nd \
 #  unictype/category-test \
 #  unictype/ctype-upper \
+#  unictype/property-alphabetic \
+#  unictype/property-join-control \
 #  uninorm/nfc \
 #  uninorm/nfkd \
 #  uninorm/u8-normalize \
@@ -62,6 +66,7 @@
 #  unistr/u8-mbtouc \
 #  unistr/u8-next \
 #  unistr/u8-strlen \
+#  unistr/u8-strmbtouc \
 #  unistr/u8-uctomb \
 #  uniwidth/u8-strwidth \
 #  uniwidth/u8-width \
@@ -85,9 +90,13 @@ gl_MODULES([
   uniconv/u8-strconv-from-enc
   uniconv/u8-strconv-to-enc
   unictype/category-L
+  unictype/category-M
   unictype/category-Mn
+  unictype/category-Nd
   unictype/category-test
   unictype/ctype-upper
+  unictype/property-alphabetic
+  unictype/property-join-control
   uninorm/nfc
   uninorm/nfkd
   uninorm/u8-normalize
@@ -96,6 +105,7 @@ gl_MODULES([
   unistr/u8-mbtouc
   unistr/u8-next
   unistr/u8-strlen
+  unistr/u8-strmbtouc
   unistr/u8-uctomb
   uniwidth/u8-strwidth
   uniwidth/u8-width
diff --git a/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4 
b/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
index c372316135..b3852a595e 100644
--- a/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
+++ b/tp/Texinfo/XS/gnulib/m4/gnulib-common.m4
@@ -1,4 +1,4 @@
-# gnulib-common.m4 serial 88
+# gnulib-common.m4 serial 89
 dnl Copyright (C) 2007-2023 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -114,10 +114,14 @@ AC_DEFUN([gl_COMMON_BODY], [
 # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4)
 #endif
 
-/* Disable GCC -Wpedantic if using __has_c_attribute and this is not C23+.  */
-#if (defined __has_c_attribute && _GL_GNUC_PREREQ (4, 6) \
-     && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710)
-# pragma GCC diagnostic ignored "-Wpedantic"
+/* Use __has_c_attribute if available.  However, do not use with
+   pre-C23 GCC, which can issue false positives if -Wpedantic.  */
+#if (defined __has_c_attribute \
+     && ! (_GL_GNUC_PREREQ (4, 6) \
+           && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710))
+# define _GL_HAVE___HAS_C_ATTRIBUTE 1
+#else
+# define _GL_HAVE___HAS_C_ATTRIBUTE 0
 #endif
 
 /* Define if, in a function declaration, the attributes in bracket syntax
@@ -242,7 +246,7 @@ AC_DEFUN([gl_COMMON_BODY], [
    in C++ also: namespace, class, template specialization.  */
 #ifndef _GL_ATTRIBUTE_DEPRECATED
 # ifndef _GL_BRACKET_BEFORE_ATTRIBUTE
-#  ifdef __has_c_attribute
+#  if _GL_HAVE___HAS_C_ATTRIBUTE
 #   if __has_c_attribute (__deprecated__)
 #    define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]]
 #   endif
@@ -291,7 +295,7 @@ AC_DEFUN([gl_COMMON_BODY], [
 /* Applies to: Empty statement (;), inside a 'switch' statement.  */
 /* Always expands to something.  */
 #ifndef _GL_ATTRIBUTE_FALLTHROUGH
-# ifdef __has_c_attribute
+# if _GL_HAVE___HAS_C_ATTRIBUTE
 #  if __has_c_attribute (__fallthrough__)
 #   define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]]
 #  endif
@@ -380,7 +384,7 @@ AC_DEFUN([gl_COMMON_BODY], [
 #   if !defined __apple_build_version__ && __clang_major__ >= 10
 #    define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
 #   endif
-#  elif defined __has_c_attribute
+#  elif _GL_HAVE___HAS_C_ATTRIBUTE
 #   if __has_c_attribute (__maybe_unused__)
 #    define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]]
 #   endif
@@ -411,7 +415,7 @@ AC_DEFUN([gl_COMMON_BODY], [
 #   if __clang_major__ >= 1000
 #    define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
 #   endif
-#  elif defined __has_c_attribute
+#  elif _GL_HAVE___HAS_C_ATTRIBUTE
 #   if __has_c_attribute (__nodiscard__)
 #    define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]]
 #   endif
diff --git a/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4 
b/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
index e0aeed1793..354d91db9a 100644
--- a/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
+++ b/tp/Texinfo/XS/gnulib/m4/gnulib-comp.m4
@@ -124,10 +124,14 @@ AC_DEFUN([gl_EARLY],
   # Code from module uniconv/u8-strconv-to-enc:
   # Code from module unictype/base:
   # Code from module unictype/category-L:
+  # Code from module unictype/category-M:
   # Code from module unictype/category-Mn:
+  # Code from module unictype/category-Nd:
   # Code from module unictype/category-test:
   # Code from module unictype/combining-class:
   # Code from module unictype/ctype-upper:
+  # Code from module unictype/property-alphabetic:
+  # Code from module unictype/property-join-control:
   # Code from module unictype/property-soft-dotted:
   # Code from module uninorm/base:
   # Code from module uninorm/canonical-decomposition:
@@ -386,7 +390,11 @@ AC_DEFUN([gl_INIT],
   gl_UNICTYPE_H_REQUIRE_DEFAULTS
   gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-L])
   gl_UNICTYPE_H_REQUIRE_DEFAULTS
+  gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-M])
+  gl_UNICTYPE_H_REQUIRE_DEFAULTS
   gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-Mn])
+  gl_UNICTYPE_H_REQUIRE_DEFAULTS
+  gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/category-Nd])
   AC_REQUIRE([AC_C_INLINE])
   gl_LIBUNISTRING_MODULE([0.9.8], [unictype/category-test])
   gl_LIBUNISTRING_MODULE([1.1], [unictype/combining-class])
@@ -394,6 +402,12 @@ AC_DEFUN([gl_INIT],
   gl_LIBUNISTRING_MODULE([0.9.11], [unictype/ctype-upper])
   AC_REQUIRE([AC_C_INLINE])
   gl_UNICTYPE_H_REQUIRE_DEFAULTS
+  gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-alphabetic])
+  AC_REQUIRE([AC_C_INLINE])
+  gl_UNICTYPE_H_REQUIRE_DEFAULTS
+  gl_LIBUNISTRING_MODULE_WITH_VARIABLE([0.9.8], 
[unictype/property-join-control])
+  AC_REQUIRE([AC_C_INLINE])
+  gl_UNICTYPE_H_REQUIRE_DEFAULTS
   gl_LIBUNISTRING_MODULE_WITH_VARIABLE([1.1], [unictype/property-soft-dotted])
   gl_LIBUNISTRING_LIBHEADER([1.2], [uninorm.h])
   gl_UNINORM_H
@@ -762,13 +776,21 @@ AC_DEFUN([gl_FILE_LIST], [
   lib/unictype/bitmap.h
   lib/unictype/categ_L.c
   lib/unictype/categ_L.h
+  lib/unictype/categ_M.c
+  lib/unictype/categ_M.h
   lib/unictype/categ_Mn.c
   lib/unictype/categ_Mn.h
+  lib/unictype/categ_Nd.c
+  lib/unictype/categ_Nd.h
   lib/unictype/categ_test.c
   lib/unictype/combiningclass.c
   lib/unictype/combiningclass.h
   lib/unictype/ctype_upper.c
   lib/unictype/ctype_upper.h
+  lib/unictype/pr_alphabetic.c
+  lib/unictype/pr_alphabetic.h
+  lib/unictype/pr_join_control.c
+  lib/unictype/pr_join_control.h
   lib/unictype/pr_soft_dotted.c
   lib/unictype/pr_soft_dotted.h
   lib/uninorm.in.h
diff --git a/tp/Texinfo/XS/gnulib/m4/math_h.m4 
b/tp/Texinfo/XS/gnulib/m4/math_h.m4
index c214f8efa8..959006472a 100644
--- a/tp/Texinfo/XS/gnulib/m4/math_h.m4
+++ b/tp/Texinfo/XS/gnulib/m4/math_h.m4
@@ -50,7 +50,7 @@ AC_DEFUN_ONCE([gl_MATH_H],
      modf modff modfl powf
      remainder remainderf remainderl
      rint rintf rintl round roundf roundl sinf sinl sinhf sqrtf sqrtl
-     tanf tanl tanhf trunc truncf truncl])
+     tanf tanl tanhf totalorder totalorderf totalorderl trunc truncf truncl])
 ])
 
 # gl_MATH_MODULE_INDICATOR([modulename])
@@ -165,6 +165,9 @@ AC_DEFUN([gl_MATH_H_REQUIRE_DEFAULTS],
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANF])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANL])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TANHF])
+    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOTALORDER])
+    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOTALORDERF])
+    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOTALORDERL])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNC])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNCF])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNCL])
@@ -243,6 +246,9 @@ AC_DEFUN([gl_MATH_H_DEFAULTS],
   HAVE_TANF=1;                      AC_SUBST([HAVE_TANF])
   HAVE_TANL=1;                      AC_SUBST([HAVE_TANL])
   HAVE_TANHF=1;                     AC_SUBST([HAVE_TANHF])
+  HAVE_TOTALORDER=1;                AC_SUBST([HAVE_TOTALORDER])
+  HAVE_TOTALORDERF=1;               AC_SUBST([HAVE_TOTALORDERF])
+  HAVE_TOTALORDERL=1;               AC_SUBST([HAVE_TOTALORDERL])
   HAVE_DECL_ACOSL=1;                AC_SUBST([HAVE_DECL_ACOSL])
   HAVE_DECL_ASINL=1;                AC_SUBST([HAVE_DECL_ASINL])
   HAVE_DECL_ATANL=1;                AC_SUBST([HAVE_DECL_ATANL])
@@ -356,6 +362,9 @@ AC_DEFUN([gl_MATH_H_DEFAULTS],
   REPLACE_SQRTL=0;                  AC_SUBST([REPLACE_SQRTL])
   REPLACE_TANF=0;                   AC_SUBST([REPLACE_TANF])
   REPLACE_TANHF=0;                  AC_SUBST([REPLACE_TANHF])
+  REPLACE_TOTALORDER=0;             AC_SUBST([REPLACE_TOTALORDER])
+  REPLACE_TOTALORDERF=0;            AC_SUBST([REPLACE_TOTALORDERF])
+  REPLACE_TOTALORDERL=0;            AC_SUBST([REPLACE_TOTALORDERL])
   REPLACE_TRUNC=0;                  AC_SUBST([REPLACE_TRUNC])
   REPLACE_TRUNCF=0;                 AC_SUBST([REPLACE_TRUNCF])
   REPLACE_TRUNCL=0;                 AC_SUBST([REPLACE_TRUNCL])
@@ -366,7 +375,7 @@ AC_DEFUN([gl_MATH_H_DEFAULTS],
 # Sets variable HAVE_SAME_LONG_DOUBLE_AS_DOUBLE to 0 or 1, and defines
 # HAVE_SAME_LONG_DOUBLE_AS_DOUBLE accordingly.
 # The currently known platforms where this is the case are:
-# Linux/HPPA, Minix 3.1.8, AIX 5, AIX 6 and 7 with xlc, MSVC 9.
+# Linux/HPPA, NetBSD/sparc32, Minix 3.1.8, AIX 5, AIX 6 and 7 with xlc, MSVC 9.
 AC_DEFUN([gl_LONG_DOUBLE_VS_DOUBLE],
 [
   AC_CACHE_CHECK([whether long double and double are the same],
diff --git a/tp/Texinfo/XS/gnulib/m4/printf.m4 
b/tp/Texinfo/XS/gnulib/m4/printf.m4
index 3be48277a6..729847b0aa 100644
--- a/tp/Texinfo/XS/gnulib/m4/printf.m4
+++ b/tp/Texinfo/XS/gnulib/m4/printf.m4
@@ -1,4 +1,4 @@
-# printf.m4 serial 85
+# printf.m4 serial 87
 dnl Copyright (C) 2003, 2007-2023 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -86,7 +86,6 @@ changequote(,)dnl
            linux*-android*)      gl_cv_func_printf_sizes_c99="guessing yes";;
 changequote([,])dnl
                                  # Guess yes on MSVC, no on mingw.
-           windows*-gnu*)        gl_cv_func_printf_sizes_c99="guessing no" ;;
            windows*-msvc*)       gl_cv_func_printf_sizes_c99="guessing yes" ;;
            mingw* | windows*)    AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -230,7 +229,6 @@ int main ()
                               # Guess yes on Android.
            linux*-android*)   gl_cv_func_printf_long_double="guessing yes";;
                               # Guess yes on MSVC, no on mingw.
-           windows*-gnu*)     gl_cv_func_printf_long_double="guessing no" ;;
            windows*-msvc*)    gl_cv_func_printf_long_double="guessing yes" ;;
            mingw* | windows*) AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -358,7 +356,6 @@ changequote(,)dnl
            linux*-android*)      gl_cv_func_printf_infinite="guessing no";;
 changequote([,])dnl
                                  # Guess yes on MSVC, no on mingw.
-           windows*-gnu*)        gl_cv_func_printf_infinite="guessing no" ;;
            windows*-msvc*)       gl_cv_func_printf_infinite="guessing yes" ;;
            mingw* | windows*)    AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -574,7 +571,6 @@ changequote(,)dnl
                    linux*-android*)      
gl_cv_func_printf_infinite_long_double="guessing no";;
 changequote([,])dnl
                                          # Guess yes on MSVC, no on mingw.
-                   windows*-gnu*)        
gl_cv_func_printf_infinite_long_double="guessing no" ;;
                    windows*-msvc*)       
gl_cv_func_printf_infinite_long_double="guessing yes" ;;
                    mingw* | windows*)    AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -865,7 +861,6 @@ changequote(,)dnl
            linux*-android*)      gl_cv_func_printf_directive_f="guessing no";;
 changequote([,])dnl
                                  # Guess yes on MSVC, no on mingw.
-           windows*-gnu*)        gl_cv_func_printf_directive_f="guessing no" ;;
            windows*-msvc*)       gl_cv_func_printf_directive_f="guessing yes" 
;;
            mingw* | windows*)    AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -1265,6 +1260,50 @@ changequote([,])dnl
     ])
 ])
 
+dnl Test whether the *printf family of functions supports the # flag with a
+dnl zero precision and a zero value in the 'x' and 'X' directives correctly.
+dnl ISO C and POSIX specify that for the 'd', 'i', 'b', 'o', 'u', 'x', 'X'
+dnl directives: "The result of converting a zero value with a precision of
+dnl zero is no characters."  But on Mac OS X 10.5, for the 'x', 'X' directives,
+dnl when a # flag is present, the output is "0" instead of "".
+dnl Result is gl_cv_func_printf_flag_alt_precision_zero.
+
+AC_DEFUN([gl_PRINTF_FLAG_ALT_PRECISION_ZERO],
+[
+  AC_REQUIRE([AC_PROG_CC])
+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+  AC_CACHE_CHECK([whether printf supports the alternative flag with a zero 
precision],
+    [gl_cv_func_printf_flag_alt_precision_zero],
+    [
+      AC_RUN_IFELSE(
+        [AC_LANG_SOURCE([[
+#include <stdio.h>
+static char buf[10];
+int main ()
+{
+  int result = 0;
+  if (sprintf (buf, "%#.0x %d", 0, 33, 44) > 0 + 3)
+    result |= 1;
+  return result;
+}]])],
+        [gl_cv_func_printf_flag_alt_precision_zero=yes],
+        [gl_cv_func_printf_flag_alt_precision_zero=no],
+        [
+changequote(,)dnl
+         case "$host_os" in
+           # Guess no only on macOS 10..12 systems.
+           darwin[0-9] | darwin[0-9].* | \
+           darwin1[0-9] | darwin1[0-9].* | \
+           darwin2[0-1] | darwin2[0-1].*)
+                    gl_cv_func_printf_flag_alt_precision_zero="guessing no" ;;
+           darwin*) gl_cv_func_printf_flag_alt_precision_zero="guessing yes" ;;
+           *)       gl_cv_func_printf_flag_alt_precision_zero="guessing yes" ;;
+         esac
+changequote([,])dnl
+        ])
+    ])
+])
+
 dnl Test whether the *printf family of functions supports large precisions.
 dnl On mingw, precisions larger than 512 are treated like 512, in integer,
 dnl floating-point or pointer output. On Solaris 10/x86, precisions larger
@@ -1629,7 +1668,6 @@ changequote(,)dnl
            linux*-android*)      gl_cv_func_snprintf_retval_c99="guessing 
yes";;
 changequote([,])dnl
                                  # Guess yes on MSVC, no on mingw.
-           windows*-gnu*)        gl_cv_func_snprintf_retval_c99="guessing no" 
;;
            windows*-msvc*)       gl_cv_func_snprintf_retval_c99="guessing yes" 
;;
            mingw* | windows*)    AC_EGREP_CPP([Known], [
 #ifdef _MSC_VER
@@ -2089,17 +2127,18 @@ dnl 13 = gl_PRINTF_POSITIONS
 dnl 14 = gl_PRINTF_FLAG_GROUPING
 dnl 15 = gl_PRINTF_FLAG_LEFTADJUST
 dnl 16 = gl_PRINTF_FLAG_ZERO
-dnl 17 = gl_PRINTF_PRECISION
-dnl 18 = gl_PRINTF_ENOMEM
-dnl 19 = gl_SNPRINTF_PRESENCE
-dnl 20 = gl_SNPRINTF_TRUNCATION_C99
-dnl 21 = gl_SNPRINTF_RETVAL_C99
-dnl 22 = gl_SNPRINTF_DIRECTIVE_N
-dnl 23 = gl_SNPRINTF_SIZE1
-dnl 24 = gl_VSNPRINTF_ZEROSIZE_C99
-dnl 25 = gl_SWPRINTF_WORKS
-dnl 26 = gl_SWPRINTF_DIRECTIVE_LA
-dnl 27 = gl_SWPRINTF_DIRECTIVE_LC
+dnl 17 = gl_PRINTF_FLAG_ALT_PRECISION_ZERO
+dnl 18 = gl_PRINTF_PRECISION
+dnl 19 = gl_PRINTF_ENOMEM
+dnl 20 = gl_SNPRINTF_PRESENCE
+dnl 21 = gl_SNPRINTF_TRUNCATION_C99
+dnl 22 = gl_SNPRINTF_RETVAL_C99
+dnl 23 = gl_SNPRINTF_DIRECTIVE_N
+dnl 24 = gl_SNPRINTF_SIZE1
+dnl 25 = gl_VSNPRINTF_ZEROSIZE_C99
+dnl 26 = gl_SWPRINTF_WORKS
+dnl 27 = gl_SWPRINTF_DIRECTIVE_LA
+dnl 28 = gl_SWPRINTF_DIRECTIVE_LC
 dnl
 dnl 1 = checking whether printf supports size specifiers as in C99...
 dnl 2 = checking whether printf supports size specifiers as in C23...
@@ -2117,58 +2156,59 @@ dnl 13 = checking whether printf supports POSIX/XSI 
format strings with position
 dnl 14 = checking whether printf supports the grouping flag...
 dnl 15 = checking whether printf supports the left-adjust flag correctly...
 dnl 16 = checking whether printf supports the zero flag correctly...
-dnl 17 = checking whether printf supports large precisions...
-dnl 18 = checking whether printf survives out-of-memory conditions...
-dnl 19 = checking for snprintf...
-dnl 20 = checking whether snprintf truncates the result as in C99...
-dnl 21 = checking whether snprintf returns a byte count as in C99...
-dnl 22 = checking whether snprintf fully supports the 'n' directive...
-dnl 23 = checking whether snprintf respects a size of 1...
-dnl 24 = checking whether vsnprintf respects a zero size as in C99...
-dnl 25 = checking whether swprintf works...
-dnl 26 = checking whether swprintf supports the 'La' and 'LA' directives...
-dnl 27 = checking whether swprintf supports the 'lc' directive...
+dnl 17 = checking whether printf supports the alternative flag with a zero 
precision...
+dnl 18 = checking whether printf supports large precisions...
+dnl 19 = checking whether printf survives out-of-memory conditions...
+dnl 20 = checking for snprintf...
+dnl 21 = checking whether snprintf truncates the result as in C99...
+dnl 22 = checking whether snprintf returns a byte count as in C99...
+dnl 23 = checking whether snprintf fully supports the 'n' directive...
+dnl 24 = checking whether snprintf respects a size of 1...
+dnl 25 = checking whether vsnprintf respects a zero size as in C99...
+dnl 26 = checking whether swprintf works...
+dnl 27 = checking whether swprintf supports the 'La' and 'LA' directives...
+dnl 28 = checking whether swprintf supports the 'lc' directive...
 dnl
 dnl . = yes, # = no.
 dnl
-dnl                                  1  2  3  4  5  6  7  8  9 10 11 12 13 14 
15 16 17 18 19 20 21 22 23 24 25 26 27
-dnl   musl libc 1.2.3                .  #  .  .  .  .  #  #  .  .  .  .  .  .  
.  .  .  .  .  .  .  .  .  .  #  .  #
-dnl   glibc 2.35                     .  #  .  .  .  .  .  .  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  .  .
-dnl   glibc 2.5                      .  #  .  .  .  .  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  #  .
-dnl   glibc 2.3.6                    .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  #  .
-dnl   FreeBSD 13.0                   .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  #  .  .  .  .  .  .  #  .  #
-dnl   FreeBSD 5.4, 6.1               .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  #  .  #  .  .  .  .  .  .  #  ?  ?
-dnl   Mac OS X 10.13.5               .  #  .  .  #  #  #  #  .  #  .  #  .  .  
.  .  .  .  .  .  .  #  .  .  #  ?  ?
-dnl   Mac OS X 10.5.8                .  #  .  .  #  #  #  #  .  .  .  #  .  .  
.  #  .  .  .  .  .  .  .  .  #  ?  ?
-dnl   Mac OS X 10.3.9                .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  #  .  #  .  .  .  .  .  .  #  ?  ?
-dnl   OpenBSD 6.0, 6.7               .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  #  .  .  .  .  .  .  #  .  #
-dnl   OpenBSD 3.9, 4.0               .  #  .  #  #  #  #  #  #  .  #  #  .  #  
.  #  .  #  .  .  .  .  .  .  #  ?  ?
-dnl   Cygwin 1.7.0 (2009)            .  #  .  .  #  .  #  #  .  .  ?  ?  .  .  
.  .  .  ?  .  .  .  .  .  .  ?  ?  ?
-dnl   Cygwin 1.5.25 (2008)           .  #  .  .  #  #  #  #  .  .  #  ?  .  .  
.  .  .  #  .  .  .  .  .  .  ?  ?  ?
-dnl   Cygwin 1.5.19 (2006)           #  #  .  .  #  #  #  #  #  .  #  ?  .  #  
.  #  #  #  .  .  .  .  .  .  ?  ?  ?
-dnl   Solaris 11.4                   .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  .  .  .  .  .  .  .  .  .  #  .
-dnl   Solaris 11.3                   .  #  .  .  .  #  #  #  .  .  #  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  #  .
-dnl   Solaris 11.0                   .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  .  .  .  .  .  .  .  .  ?  ?  ?
-dnl   Solaris 10                     .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  #  .  .  .  .  .  .  .  .  #  .
-dnl   Solaris 2.6 ... 9              #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  #  .  .  .  #  .  .  .  ?  ?  ?
-dnl   Solaris 2.5.1                  #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  .  .  #  #  #  #  #  #  ?  ?  ?
-dnl   AIX 7.1                        .  #  .  #  #  #  #  #  .  .  .  #  .  .  
.  #  #  .  .  .  .  .  .  .  #  .  .
-dnl   AIX 5.2                        .  #  .  #  #  #  #  #  .  .  .  #  .  .  
.  #  .  .  .  .  .  .  .  .  #  ?  ?
-dnl   AIX 4.3.2, 5.1                 #  #  .  #  #  #  #  #  #  .  .  #  .  .  
.  #  .  .  .  .  #  .  .  .  #  ?  ?
-dnl   HP-UX 11.31                    .  #  .  .  .  #  #  #  .  .  .  ?  .  .  
.  #  .  .  .  .  #  #  .  .  ?  ?  ?
-dnl   HP-UX 11.{00,11,23}            #  #  .  .  .  #  #  #  #  .  .  ?  .  .  
.  #  .  .  .  .  #  #  .  #  ?  ?  ?
-dnl   HP-UX 10.20                    #  #  .  #  .  #  #  #  #  .  ?  ?  .  .  
#  #  .  .  .  .  #  #  ?  #  ?  ?  ?
-dnl   IRIX 6.5                       #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  .  .  .  .  #  .  .  .  #  ?  ?
-dnl   OSF/1 5.1                      #  #  .  #  #  #  #  #  #  .  .  ?  .  .  
.  #  .  .  .  .  #  .  .  #  ?  ?  ?
-dnl   OSF/1 4.0d                     #  #  .  #  #  #  #  #  #  .  .  ?  .  .  
.  #  .  .  #  #  #  #  #  #  ?  ?  ?
-dnl   NetBSD 9.0                     .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  #  .  #
-dnl   NetBSD 5.0                     .  #  .  .  #  #  #  #  .  .  .  #  .  .  
.  #  .  #  .  .  .  .  .  .  #  ?  ?
-dnl   NetBSD 4.0                     .  #  ?  ?  ?  ?  #  #  ?  .  ?  #  .  ?  
?  ?  ?  ?  .  .  .  ?  ?  ?  #  ?  ?
-dnl   NetBSD 3.0                     .  #  .  .  .  #  #  #  #  .  ?  #  #  #  
?  #  .  #  .  .  .  .  .  .  #  ?  ?
-dnl   Haiku                          .  #  .  .  #  #  #  #  #  .  #  ?  .  .  
.  .  .  ?  .  .  ?  .  .  .  .  #  .
-dnl   BeOS                           #  #  #  .  #  #  #  #  #  .  ?  ?  #  .  
?  .  #  ?  .  .  ?  .  .  .  ?  ?  ?
-dnl   Android 4.3                    .  #  .  #  #  #  #  #  #  #  #  ?  .  #  
.  #  .  #  .  .  .  #  .  .  ?  ?  ?
-dnl   old mingw / msvcrt             #  #  #  #  #  #  #  #  #  .  .  ?  #  #  
.  #  #  ?  .  #  #  #  .  .  #  ?  ?
-dnl   MSVC 9                         #  #  #  #  #  #  #  #  #  #  .  ?  #  #  
.  #  #  ?  #  #  #  #  .  .  #  ?  ?
-dnl   mingw 2009-2011                .  #  #  .  #  .  #  #  .  .  .  ?  #  #  
.  .  .  ?  .  .  .  .  .  .  #  ?  ?
-dnl   mingw-w64 2011                 #  #  #  #  #  #  #  #  #  .  .  ?  #  #  
.  #  #  ?  .  #  #  #  .  .  #  ?  ?
+dnl                                  1  2  3  4  5  6  7  8  9 10 11 12 13 14 
15 16 17 18 19 20 21 22 23 24 25 26 27 28
+dnl   musl libc 1.2.3                .  #  .  .  .  .  #  #  .  .  .  .  .  .  
.  .  ?  .  .  .  .  .  .  .  .  #  .  #
+dnl   glibc 2.35                     .  #  .  .  .  .  .  .  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  .  .  .
+dnl   glibc 2.5                      .  #  .  .  .  .  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  .  #  .
+dnl   glibc 2.3.6                    .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  .  #  .
+dnl   FreeBSD 13.0                   .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  #  .  .  .  .  .  .  #  .  #
+dnl   FreeBSD 5.4, 6.1               .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  #  ?  .  #  .  .  .  .  .  .  #  ?  ?
+dnl   Mac OS X 10.13.5               .  #  .  .  #  #  #  #  .  #  .  #  .  .  
.  .  .  .  .  .  .  .  #  .  .  #  ?  ?
+dnl   Mac OS X 10.5.8                .  #  .  .  #  #  #  #  .  .  .  #  .  .  
.  #  #  .  .  .  .  .  .  .  .  #  ?  ?
+dnl   Mac OS X 10.3.9                .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  #  #  .  #  .  .  .  .  .  .  #  ?  ?
+dnl   OpenBSD 6.0, 6.7               .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  #  .  .  .  .  .  .  #  .  #
+dnl   OpenBSD 3.9, 4.0               .  #  .  #  #  #  #  #  #  .  #  #  .  #  
.  #  ?  .  #  .  .  .  .  .  .  #  ?  ?
+dnl   Cygwin 1.7.0 (2009)            .  #  .  .  #  .  #  #  .  .  ?  ?  .  .  
.  .  ?  .  ?  .  .  .  .  .  .  ?  ?  ?
+dnl   Cygwin 1.5.25 (2008)           .  #  .  .  #  #  #  #  .  .  #  ?  .  .  
.  .  ?  .  #  .  .  .  .  .  .  ?  ?  ?
+dnl   Cygwin 1.5.19 (2006)           #  #  .  .  #  #  #  #  #  .  #  ?  .  #  
.  #  ?  #  #  .  .  .  .  .  .  ?  ?  ?
+dnl   Solaris 11.4                   .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  .  .  .  .  .  .  .  .  .  .  #  .
+dnl   Solaris 11.3                   .  #  .  .  .  #  #  #  .  .  #  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  .  #  .
+dnl   Solaris 11.0                   .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  .  .  .  .  .  .  .  .  .  ?  ?  ?
+dnl   Solaris 10                     .  #  .  #  #  #  #  #  .  .  #  #  .  .  
.  #  .  #  .  .  .  .  .  .  .  .  #  .
+dnl   Solaris 2.6 ... 9              #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  ?  #  .  .  .  #  .  .  .  ?  ?  ?
+dnl   Solaris 2.5.1                  #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  ?  .  .  #  #  #  #  #  #  ?  ?  ?
+dnl   AIX 7.1                        .  #  .  #  #  #  #  #  .  .  .  #  .  .  
.  #  .  #  .  .  .  .  .  .  .  #  .  .
+dnl   AIX 5.2                        .  #  .  #  #  #  #  #  .  .  .  #  .  .  
.  #  ?  .  .  .  .  .  .  .  .  #  ?  ?
+dnl   AIX 4.3.2, 5.1                 #  #  .  #  #  #  #  #  #  .  .  #  .  .  
.  #  ?  .  .  .  .  #  .  .  .  #  ?  ?
+dnl   HP-UX 11.31                    .  #  .  .  .  #  #  #  .  .  .  ?  .  .  
.  #  ?  .  .  .  .  #  #  .  .  ?  ?  ?
+dnl   HP-UX 11.{00,11,23}            #  #  .  .  .  #  #  #  #  .  .  ?  .  .  
.  #  ?  .  .  .  .  #  #  .  #  ?  ?  ?
+dnl   HP-UX 10.20                    #  #  .  #  .  #  #  #  #  .  ?  ?  .  .  
#  #  ?  .  .  .  .  #  #  ?  #  ?  ?  ?
+dnl   IRIX 6.5                       #  #  .  #  #  #  #  #  #  .  #  #  .  .  
.  #  ?  .  .  .  .  #  .  .  .  #  ?  ?
+dnl   OSF/1 5.1                      #  #  .  #  #  #  #  #  #  .  .  ?  .  .  
.  #  ?  .  .  .  .  #  .  .  #  ?  ?  ?
+dnl   OSF/1 4.0d                     #  #  .  #  #  #  #  #  #  .  .  ?  .  .  
.  #  ?  .  .  #  #  #  #  #  #  ?  ?  ?
+dnl   NetBSD 9.0                     .  #  .  .  .  #  #  #  .  .  .  #  .  .  
.  .  .  .  .  .  .  .  .  .  .  #  .  #
+dnl   NetBSD 5.0                     .  #  .  .  #  #  #  #  .  .  .  #  .  .  
.  #  ?  .  #  .  .  .  .  .  .  #  ?  ?
+dnl   NetBSD 4.0                     .  #  ?  ?  ?  ?  #  #  ?  .  ?  #  .  ?  
?  ?  ?  ?  ?  .  .  .  ?  ?  ?  #  ?  ?
+dnl   NetBSD 3.0                     .  #  .  .  .  #  #  #  #  .  ?  #  #  #  
?  #  ?  .  #  .  .  .  .  .  .  #  ?  ?
+dnl   Haiku                          .  #  .  .  #  #  #  #  #  .  #  ?  .  .  
.  .  ?  .  ?  .  .  ?  .  .  .  .  #  .
+dnl   BeOS                           #  #  #  .  #  #  #  #  #  .  ?  ?  #  .  
?  .  ?  #  ?  .  .  ?  .  .  .  ?  ?  ?
+dnl   Android 4.3                    .  #  .  #  #  #  #  #  #  #  #  ?  .  #  
.  #  ?  .  #  .  .  .  #  .  .  ?  ?  ?
+dnl   old mingw / msvcrt             #  #  #  #  #  #  #  #  #  .  .  ?  #  #  
.  #  ?  #  ?  .  #  #  #  .  .  #  ?  ?
+dnl   MSVC 9                         #  #  #  #  #  #  #  #  #  #  .  ?  #  #  
.  #  ?  #  ?  #  #  #  #  .  .  #  ?  ?
+dnl   mingw 2009-2011                .  #  #  .  #  .  #  #  .  .  .  ?  #  #  
.  .  ?  .  ?  .  .  .  .  .  .  #  ?  ?
+dnl   mingw-w64 2011                 #  #  #  #  #  #  #  #  #  .  .  ?  #  #  
.  #  ?  #  ?  .  #  #  #  .  .  #  ?  ?
diff --git a/tp/Texinfo/XS/gnulib/m4/unistd_h.m4 
b/tp/Texinfo/XS/gnulib/m4/unistd_h.m4
index 1c96158155..8fa0fa3255 100644
--- a/tp/Texinfo/XS/gnulib/m4/unistd_h.m4
+++ b/tp/Texinfo/XS/gnulib/m4/unistd_h.m4
@@ -1,4 +1,4 @@
-# unistd_h.m4 serial 94
+# unistd_h.m4 serial 95
 dnl Copyright (C) 2006-2023 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -234,6 +234,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
   REPLACE_EXECVP=0;                  AC_SUBST([REPLACE_EXECVP])
   REPLACE_EXECVPE=0;                 AC_SUBST([REPLACE_EXECVPE])
   REPLACE_FACCESSAT=0;               AC_SUBST([REPLACE_FACCESSAT])
+  REPLACE_FCHDIR=0;                  AC_SUBST([REPLACE_FCHDIR])
   REPLACE_FCHOWNAT=0;                AC_SUBST([REPLACE_FCHOWNAT])
   REPLACE_FDATASYNC=0;               AC_SUBST([REPLACE_FDATASYNC])
   REPLACE_FTRUNCATE=0;               AC_SUBST([REPLACE_FTRUNCATE])
diff --git a/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4 
b/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
index df87b9e798..77da782188 100644
--- a/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
+++ b/tp/Texinfo/XS/gnulib/m4/vasnprintf.m4
@@ -1,4 +1,4 @@
-# vasnprintf.m4 serial 50
+# vasnprintf.m4 serial 51
 dnl Copyright (C) 2002-2004, 2006-2023 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -367,6 +367,22 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_FLAG_ZERO],
   esac
 ])
 
+# Extra prerequisites of lib/vasnprintf.c for supporting the # flag with a
+# zero precision and a zero value in the 'x' and 'X' directives.
+AC_DEFUN([gl_PREREQ_VASNPRINTF_FLAG_ALT_PRECISION_ZERO],
+[
+  AC_REQUIRE([gl_PRINTF_FLAG_ALT_PRECISION_ZERO])
+  case "$gl_cv_func_printf_flag_alt_precision_zero" in
+    *yes)
+      ;;
+    *)
+      AC_DEFINE([NEED_PRINTF_FLAG_ALT_PRECISION_ZERO], [1],
+        [Define if the vasnprintf implementation needs special code for the
+         # flag with a zero precision and a zero value in the 'x' and 'X' 
directives.])
+      ;;
+  esac
+])
+
 # Extra prerequisites of lib/vasnprintf.c for supporting large precisions.
 AC_DEFUN([gl_PREREQ_VASNPRINTF_PRECISION],
 [
@@ -425,6 +441,7 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_WITH_POSIX_EXTRAS],
   gl_PREREQ_VASNPRINTF_FLAG_GROUPING
   gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST
   gl_PREREQ_VASNPRINTF_FLAG_ZERO
+  gl_PREREQ_VASNPRINTF_FLAG_ALT_PRECISION_ZERO
   gl_PREREQ_VASNPRINTF_PRECISION
   gl_PREREQ_VASNPRINTF_ENOMEM
 ])
diff --git a/tp/Texinfo/XS/gnulib/m4/wchar_h.m4 
b/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
index 31f5b0794d..8d62293646 100644
--- a/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
+++ b/tp/Texinfo/XS/gnulib/m4/wchar_h.m4
@@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is 
preserved.
 
 dnl Written by Eric Blake.
 
-# wchar_h.m4 serial 61
+# wchar_h.m4 serial 62
 
 AC_DEFUN_ONCE([gl_WCHAR_H],
 [
@@ -186,6 +186,7 @@ AC_DEFUN([gl_WCHAR_H_REQUIRE_DEFAULTS],
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSTOK])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSWIDTH])
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSFTIME])
+    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WGETCWD])
     dnl Support Microsoft deprecated alias function names by default.
     gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_WCSDUP], [1])
   ])



reply via email to

[Prev in Thread] Current Thread [Next in Thread]