Update from Gnulib by running admin/merge-gnulib
This commit is contained in:
parent
85ca91ff91
commit
cf5e58a14d
14 changed files with 136 additions and 88 deletions
|
@ -3,7 +3,7 @@
|
|||
% Load plain if necessary, i.e., if running under initex.
|
||||
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
|
||||
%
|
||||
\def\texinfoversion{2024-02-10.22}
|
||||
\def\texinfoversion{2024-11-04.20}
|
||||
%
|
||||
% Copyright 1985, 1986, 1988, 1990-2024 Free Software Foundation, Inc.
|
||||
%
|
||||
|
@ -951,7 +951,11 @@
|
|||
\let\setfilename=\comment
|
||||
|
||||
% @bye.
|
||||
\outer\def\bye{\chappager\pagelabels\tracingstats=1\ptexend}
|
||||
\outer\def\bye{%
|
||||
\chappager\pagelabels
|
||||
% possibly set in \printindex
|
||||
\ifx\byeerror\relax\else\errmessage{\byeerror}\fi
|
||||
\tracingstats=1\ptexend}
|
||||
|
||||
|
||||
\message{pdf,}
|
||||
|
@ -3126,11 +3130,12 @@
|
|||
% at the end of the line, or no break at all here.
|
||||
% Changing the value of the penalty and/or the amount of stretch affects how
|
||||
% preferable one choice is over the other.
|
||||
% Check test cases in doc/texinfo-tex-test.texi before making any changes.
|
||||
\def\urefallowbreak{%
|
||||
\penalty0\relax
|
||||
\hskip 0pt plus 2 em\relax
|
||||
\hskip 0pt plus 3 em\relax
|
||||
\penalty1000\relax
|
||||
\hskip 0pt plus -2 em\relax
|
||||
\hskip 0pt plus -3 em\relax
|
||||
}
|
||||
|
||||
\urefbreakstyle after
|
||||
|
@ -5438,6 +5443,9 @@
|
|||
\closein 1
|
||||
\endgroup}
|
||||
|
||||
% Checked in @bye
|
||||
\let\byeerror\relax
|
||||
|
||||
% If the index file starts with a backslash, forgo reading the index
|
||||
% file altogether. If somebody upgrades texinfo.tex they may still have
|
||||
% old index files using \ as the escape character. Reading this would
|
||||
|
@ -5446,7 +5454,9 @@
|
|||
\ifflagclear{txiindexescapeisbackslash}{%
|
||||
\uccode`\~=`\\ \uppercase{\if\noexpand~}\noexpand#1
|
||||
\ifflagclear{txiskipindexfileswithbackslash}{%
|
||||
\errmessage{%
|
||||
% Delay the error message until the very end to give a chance
|
||||
% for the whole index to be output as input for texindex.
|
||||
\global\def\byeerror{%
|
||||
ERROR: A sorted index file in an obsolete format was skipped.
|
||||
To fix this problem, please upgrade your version of 'texi2dvi'
|
||||
or 'texi2pdf' to that at <https://ftp.gnu.org/gnu/texinfo>.
|
||||
|
@ -5567,7 +5577,7 @@
|
|||
% \entry typesets a paragraph consisting of the text (#1), dot leaders, and
|
||||
% then page number (#2) flushed to the right margin. It is used for index
|
||||
% and table of contents entries. The paragraph is indented by \leftskip.
|
||||
%
|
||||
% If \tocnodetarget is set, link text to the referenced node.
|
||||
\def\entry{%
|
||||
\begingroup
|
||||
%
|
||||
|
@ -5608,7 +5618,13 @@
|
|||
\global\setbox\boxA=\hbox\bgroup
|
||||
\ifpdforxetex
|
||||
\iflinkentrytext
|
||||
\pdflinkpage{#1}{\unhbox\boxA}%
|
||||
\ifx\tocnodetarget\empty
|
||||
\unhbox\boxA
|
||||
\else
|
||||
\startxreflink{\tocnodetarget}{}%
|
||||
\unhbox\boxA
|
||||
\endlink
|
||||
\fi
|
||||
\else
|
||||
\unhbox\boxA
|
||||
\fi
|
||||
|
@ -5625,11 +5641,18 @@
|
|||
%
|
||||
\null\nobreak\indexdotfill % Have leaders before the page number.
|
||||
%
|
||||
\hskip\skip\thinshrinkable
|
||||
\ifpdforxetex
|
||||
\pdfgettoks#1.%
|
||||
\hskip\skip\thinshrinkable\the\toksA
|
||||
\ifx\tocnodetarget\empty
|
||||
\pdfgettoks#1.%
|
||||
\the\toksA
|
||||
\else
|
||||
% Should just be a single page number in toc
|
||||
\startxreflink{\tocnodetarget}{}%
|
||||
#1\endlink
|
||||
\fi
|
||||
\else
|
||||
\hskip\skip\thinshrinkable #1%
|
||||
#1%
|
||||
\fi
|
||||
\fi
|
||||
\egroup % end \boxA
|
||||
|
@ -6892,7 +6915,7 @@
|
|||
\vskip 0pt plus 5\baselineskip
|
||||
\penalty-300
|
||||
\vskip 0pt plus -5\baselineskip
|
||||
\dochapentry{#1}{\numeralbox}{}%
|
||||
\dochapentry{#1}{\numeralbox}{#3}{}%
|
||||
}
|
||||
%
|
||||
% Parts, in the short toc.
|
||||
|
@ -6905,12 +6928,12 @@
|
|||
% Chapters, in the main contents.
|
||||
\def\numchapentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthchap{#2}%
|
||||
\dochapentry{#1}{#2}{#4}%
|
||||
\dochapentry{#1}{#2}{#3}{#4}%
|
||||
}
|
||||
|
||||
% Chapters, in the short toc.
|
||||
\def\shortchapentry#1#2#3#4{%
|
||||
\tocentry{#1}{\shortchaplabel{#2}}{#4}%
|
||||
\tocentry{#1}{\shortchaplabel{#2}}{#3}{#4}%
|
||||
}
|
||||
|
||||
% Appendices, in the main contents.
|
||||
|
@ -6923,79 +6946,77 @@
|
|||
%
|
||||
\def\appentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthchap{#2}%
|
||||
\dochapentry{\appendixbox{#2}\hskip.7em#1}{}{#4}%
|
||||
\dochapentry{\appendixbox{#2}\hskip.7em#1}{}{#3}{#4}%
|
||||
}
|
||||
|
||||
% Unnumbered chapters.
|
||||
\def\unnchapentry#1#2#3#4{\dochapentry{#1}{}{#4}}
|
||||
\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{}{#4}}
|
||||
\def\unnchapentry#1#2#3#4{\dochapentry{#1}{}{#3}{#4}}
|
||||
\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{}{#3}{#4}}
|
||||
|
||||
% Sections.
|
||||
\def\numsecentry#1#2#3#4{\dosecentry{#1}{#2}{#4}}
|
||||
|
||||
\def\numsecentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthsec{#2}%
|
||||
\dosecentry{#1}{#2}{#4}%
|
||||
\dosecentry{#1}{#2}{#3}{#4}%
|
||||
}
|
||||
\let\appsecentry=\numsecentry
|
||||
\def\unnsecentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthsec{#2}%
|
||||
\dosecentry{#1}{}{#4}%
|
||||
\dosecentry{#1}{}{#3}{#4}%
|
||||
}
|
||||
|
||||
% Subsections.
|
||||
\def\numsubsecentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthssec{#2}%
|
||||
\dosubsecentry{#1}{#2}{#4}%
|
||||
\dosubsecentry{#1}{#2}{#3}{#4}%
|
||||
}
|
||||
\let\appsubsecentry=\numsubsecentry
|
||||
\def\unnsubsecentry#1#2#3#4{%
|
||||
\retrievesecnowidth\secnowidthssec{#2}%
|
||||
\dosubsecentry{#1}{}{#4}%
|
||||
\dosubsecentry{#1}{}{#3}{#4}%
|
||||
}
|
||||
|
||||
% And subsubsections.
|
||||
\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#2}{#4}}
|
||||
\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#2}{#3}{#4}}
|
||||
\let\appsubsubsecentry=\numsubsubsecentry
|
||||
\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{}{#4}}
|
||||
\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{}{#3}{#4}}
|
||||
|
||||
% This parameter controls the indentation of the various levels.
|
||||
% Same as \defaultparindent.
|
||||
\newdimen\tocindent \tocindent = 15pt
|
||||
|
||||
% Now for the actual typesetting. In all these, #1 is the text, #2 is
|
||||
% a section number if present, and #3 is the page number.
|
||||
% a section number if present, #3 is the node, and #4 is the page number.
|
||||
%
|
||||
% If the toc has to be broken over pages, we want it to be at chapters
|
||||
% if at all possible; hence the \penalty.
|
||||
\def\dochapentry#1#2#3{%
|
||||
\def\dochapentry#1#2#3#4{%
|
||||
\penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip
|
||||
\begingroup
|
||||
% Move the page numbers slightly to the right
|
||||
\advance\entryrightmargin by -0.05em
|
||||
\chapentryfonts
|
||||
\extrasecnoskip=0.4em % separate chapter number more
|
||||
\tocentry{#1}{#2}{#3}%
|
||||
\tocentry{#1}{#2}{#3}{#4}%
|
||||
\endgroup
|
||||
\nobreak\vskip .25\baselineskip plus.1\baselineskip
|
||||
}
|
||||
|
||||
\def\dosecentry#1#2#3{\begingroup
|
||||
\def\dosecentry#1#2#3#4{\begingroup
|
||||
\secnowidth=\secnowidthchap
|
||||
\secentryfonts \leftskip=\tocindent
|
||||
\tocentry{#1}{#2}{#3}%
|
||||
\tocentry{#1}{#2}{#3}{#4}%
|
||||
\endgroup}
|
||||
|
||||
\def\dosubsecentry#1#2#3{\begingroup
|
||||
\def\dosubsecentry#1#2#3#4{\begingroup
|
||||
\secnowidth=\secnowidthsec
|
||||
\subsecentryfonts \leftskip=2\tocindent
|
||||
\tocentry{#1}{#2}{#3}%
|
||||
\tocentry{#1}{#2}{#3}{#4}%
|
||||
\endgroup}
|
||||
|
||||
\def\dosubsubsecentry#1#2#3{\begingroup
|
||||
\def\dosubsubsecentry#1#2#3#4{\begingroup
|
||||
\secnowidth=\secnowidthssec
|
||||
\subsubsecentryfonts \leftskip=3\tocindent
|
||||
\tocentry{#1}{#2}{#3}%
|
||||
\tocentry{#1}{#2}{#3}{#4}%
|
||||
\endgroup}
|
||||
|
||||
% Used for the maximum width of a section number so we can align
|
||||
|
@ -7005,12 +7026,15 @@
|
|||
\newdimen\extrasecnoskip
|
||||
\extrasecnoskip=0pt
|
||||
|
||||
% \tocentry{TITLE}{SEC NO}{PAGE}
|
||||
\let\tocnodetarget\empty
|
||||
|
||||
% \tocentry{TITLE}{SEC NO}{NODE}{PAGE}
|
||||
%
|
||||
\def\tocentry#1#2#3{%
|
||||
\def\tocentry#1#2#3#4{%
|
||||
\def\tocnodetarget{#3}%
|
||||
\def\secno{#2}%
|
||||
\ifx\empty\secno
|
||||
\entry{#1}{#3}%
|
||||
\entry{#1}{#4}%
|
||||
\else
|
||||
\ifdim 0pt=\secnowidth
|
||||
\setbox0=\hbox{#2\hskip\labelspace\hskip\extrasecnoskip}%
|
||||
|
@ -7021,7 +7045,7 @@
|
|||
#2\hskip\labelspace\hskip\extrasecnoskip\hfill}%
|
||||
\fi
|
||||
\entrycontskip=\wd0
|
||||
\entry{\box0 #1}{#3}%
|
||||
\entry{\box0 #1}{#4}%
|
||||
\fi
|
||||
}
|
||||
\newdimen\labelspace
|
||||
|
@ -10515,6 +10539,16 @@
|
|||
\catcode"#1=\other
|
||||
}
|
||||
|
||||
% Suppress ligature creation from adjacent characters.
|
||||
\ifx\luatexversion\thisisundefined
|
||||
\def\nolig{{}}
|
||||
\else
|
||||
% Braces do not suppress ligature creation in LuaTeX, e.g. in of{}fice
|
||||
% to suppress the "ff" ligature. Using a kern appears to be the only
|
||||
% workaround.
|
||||
\def\nolig{\kern0pt{}}
|
||||
\fi
|
||||
|
||||
% https://en.wikipedia.org/wiki/Plane_(Unicode)#Basic_M
|
||||
% U+0000..U+007F = https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block)
|
||||
% U+0080..U+00FF = https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)
|
||||
|
@ -11132,8 +11166,8 @@
|
|||
% Punctuation
|
||||
\DeclareUnicodeCharacter{2013}{--}%
|
||||
\DeclareUnicodeCharacter{2014}{---}%
|
||||
\DeclareUnicodeCharacter{2018}{\quoteleft{}}%
|
||||
\DeclareUnicodeCharacter{2019}{\quoteright{}}%
|
||||
\DeclareUnicodeCharacter{2018}{\quoteleft\nolig}%
|
||||
\DeclareUnicodeCharacter{2019}{\quoteright\nolig}%
|
||||
\DeclareUnicodeCharacter{201A}{\quotesinglbase{}}%
|
||||
\DeclareUnicodeCharacter{201C}{\quotedblleft{}}%
|
||||
\DeclareUnicodeCharacter{201D}{\quotedblright{}}%
|
||||
|
@ -11168,7 +11202,7 @@
|
|||
\DeclareUnicodeCharacter{2287}{\ensuremath\supseteq}%
|
||||
%
|
||||
\DeclareUnicodeCharacter{2016}{\ensuremath\Vert}%
|
||||
\DeclareUnicodeCharacter{2032}{\ensuremath\prime}%
|
||||
\DeclareUnicodeCharacter{2032}{\ensuremath{^\prime}}%
|
||||
\DeclareUnicodeCharacter{210F}{\ensuremath\hbar}%
|
||||
\DeclareUnicodeCharacter{2111}{\ensuremath\Im}%
|
||||
\DeclareUnicodeCharacter{2113}{\ensuremath\ell}%
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
/* Written by Collin Funk. */
|
||||
|
||||
#define _GL_ENDIAN_INLINE _GL_EXTERN_INLINE
|
||||
#include <config.h>
|
||||
|
||||
#define _GL_ENDIAN_INLINE _GL_EXTERN_INLINE
|
||||
#include <endian.h>
|
||||
|
|
|
@ -77,10 +77,11 @@
|
|||
|
||||
/* Does the __typeof__ keyword work? This could be done by
|
||||
'configure', but for now it's easier to do it by hand. */
|
||||
#if (2 <= __GNUC__ \
|
||||
|| (4 <= __clang_major__) \
|
||||
|| (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
|
||||
|| (0x5110 <= __SUNPRO_C && !__STDC__))
|
||||
#if ((defined __GNUC__ && 2 <= __GNUC__) \
|
||||
|| (defined __clang_major__ && 4 <= __clang_major__) \
|
||||
|| (defined __IBMC__ && 1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
|
||||
|| (defined __SUNPRO_C && 0x5110 <= __SUNPRO_C && !__STDC__) \
|
||||
|| (defined _MSC_VER && 1939 <= _MSC_VER))
|
||||
# define _GL_HAVE___TYPEOF__ 1
|
||||
#else
|
||||
# define _GL_HAVE___TYPEOF__ 0
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#endif
|
||||
@PRAGMA_COLUMNS@
|
||||
|
||||
#if defined _GL_ALREADY_INCLUDING_LIMITS_H
|
||||
#if defined _@GUARD_PREFIX@_ALREADY_INCLUDING_LIMITS_H
|
||||
/* Special invocation convention:
|
||||
On Haiku/x86_64, we have a sequence of nested includes
|
||||
<limits.h> -> <syslimits.h> -> <limits.h>.
|
||||
|
@ -34,12 +34,12 @@
|
|||
|
||||
#ifndef _@GUARD_PREFIX@_LIMITS_H
|
||||
|
||||
# define _GL_ALREADY_INCLUDING_LIMITS_H
|
||||
# define _@GUARD_PREFIX@_ALREADY_INCLUDING_LIMITS_H
|
||||
|
||||
/* The include_next requires a split double-inclusion guard. */
|
||||
# @INCLUDE_NEXT@ @NEXT_LIMITS_H@
|
||||
|
||||
# undef _GL_ALREADY_INCLUDING_LIMITS_H
|
||||
# undef _@GUARD_PREFIX@_ALREADY_INCLUDING_LIMITS_H
|
||||
|
||||
#ifndef _@GUARD_PREFIX@_LIMITS_H
|
||||
#define _@GUARD_PREFIX@_LIMITS_H
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#endif
|
||||
@PRAGMA_COLUMNS@
|
||||
|
||||
#if defined __need_sig_atomic_t || defined __need_sigset_t || defined _GL_ALREADY_INCLUDING_SIGNAL_H || (defined _SIGNAL_H && !defined __SIZEOF_PTHREAD_MUTEX_T)
|
||||
#if defined __need_sig_atomic_t || defined __need_sigset_t || defined _@GUARD_PREFIX@_ALREADY_INCLUDING_SIGNAL_H || (defined _SIGNAL_H && !defined __SIZEOF_PTHREAD_MUTEX_T)
|
||||
/* Special invocation convention:
|
||||
- Inside glibc header files.
|
||||
- On glibc systems we have a sequence of nested includes
|
||||
|
@ -39,7 +39,7 @@
|
|||
|
||||
#ifndef _@GUARD_PREFIX@_SIGNAL_H
|
||||
|
||||
#define _GL_ALREADY_INCLUDING_SIGNAL_H
|
||||
#define _@GUARD_PREFIX@_ALREADY_INCLUDING_SIGNAL_H
|
||||
|
||||
/* Define pid_t, uid_t.
|
||||
Also, mingw defines sigset_t not in <signal.h>, but in <sys/types.h>.
|
||||
|
@ -50,7 +50,7 @@
|
|||
/* The include_next requires a split double-inclusion guard. */
|
||||
#@INCLUDE_NEXT@ @NEXT_SIGNAL_H@
|
||||
|
||||
#undef _GL_ALREADY_INCLUDING_SIGNAL_H
|
||||
#undef _@GUARD_PREFIX@_ALREADY_INCLUDING_SIGNAL_H
|
||||
|
||||
#ifndef _@GUARD_PREFIX@_SIGNAL_H
|
||||
#define _@GUARD_PREFIX@_SIGNAL_H
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
/* Written by Paul Eggert. */
|
||||
|
||||
#define _GL_STDBIT_INLINE _GL_EXTERN_INLINE
|
||||
#include <config.h>
|
||||
|
||||
#define _GL_STDBIT_INLINE _GL_EXTERN_INLINE
|
||||
#include <stdbit.h>
|
||||
|
|
|
@ -77,7 +77,8 @@ _GL_INLINE_HEADER_BEGIN
|
|||
#if ((defined __GNUC__ && 2 <= __GNUC__) \
|
||||
|| (defined __clang_major__ && 4 <= __clang_major__) \
|
||||
|| (defined __IBMC__ && 1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
|
||||
|| (defined __SUNPRO_C && 0x5110 <= __SUNPRO_C && !__STDC__))
|
||||
|| (defined __SUNPRO_C && 0x5110 <= __SUNPRO_C && !__STDC__) \
|
||||
|| (defined _MSC_VER && 1939 <= _MSC_VER))
|
||||
# define _GL_STDBIT_TYPEOF_CAST(a, b) ((__typeof__ (a)) (b))
|
||||
#elif 202311 <= __STDC_VERSION__
|
||||
# define _GL_STDBIT_TYPEOF_CAST(a, b) ((typeof (a)) (b))
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#endif
|
||||
@PRAGMA_COLUMNS@
|
||||
|
||||
#if defined __need_FILE || defined __need___FILE || defined _GL_ALREADY_INCLUDING_STDIO_H
|
||||
#if defined __need_FILE || defined __need___FILE || defined _@GUARD_PREFIX@_ALREADY_INCLUDING_STDIO_H || defined _GL_SKIP_GNULIB_STDIO_H
|
||||
/* Special invocation convention:
|
||||
- Inside glibc header files.
|
||||
- On OSF/1 5.1 we have a sequence of nested includes
|
||||
|
@ -48,12 +48,12 @@
|
|||
# endif
|
||||
#endif
|
||||
|
||||
#define _GL_ALREADY_INCLUDING_STDIO_H
|
||||
#define _@GUARD_PREFIX@_ALREADY_INCLUDING_STDIO_H
|
||||
|
||||
/* The include_next requires a split double-inclusion guard. */
|
||||
#@INCLUDE_NEXT@ @NEXT_STDIO_H@
|
||||
|
||||
#undef _GL_ALREADY_INCLUDING_STDIO_H
|
||||
#undef _@GUARD_PREFIX@_ALREADY_INCLUDING_STDIO_H
|
||||
|
||||
#ifdef _GL_DEFINED__POSIX_C_SOURCE
|
||||
# undef _GL_DEFINED__POSIX_C_SOURCE
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
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 _GL_STDLIB_INLINE _GL_EXTERN_INLINE
|
||||
#include <config.h>
|
||||
|
||||
#define _GL_STDLIB_INLINE _GL_EXTERN_INLINE
|
||||
#include <stdlib.h>
|
||||
|
|
|
@ -746,15 +746,20 @@ _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - "
|
|||
# endif
|
||||
#endif
|
||||
|
||||
/* Return maximum number of bytes of a multibyte character. */
|
||||
/* Return maximum number of bytes in a multibyte character in the
|
||||
current locale. */
|
||||
#if @REPLACE_MB_CUR_MAX@
|
||||
# if !GNULIB_defined_MB_CUR_MAX
|
||||
_GL_STDLIB_INLINE int
|
||||
_GL_STDLIB_INLINE size_t
|
||||
gl_MB_CUR_MAX (void)
|
||||
{
|
||||
# if 0 < @REPLACE_MB_CUR_MAX@
|
||||
return @REPLACE_MB_CUR_MAX@;
|
||||
# else
|
||||
/* Turn the value 3 to the value 4, as needed for the UTF-8 encoding. */
|
||||
int gl_mb_cur_max = MB_CUR_MAX;
|
||||
return gl_mb_cur_max == 3 ? 4 : gl_mb_cur_max;
|
||||
# endif
|
||||
}
|
||||
# undef MB_CUR_MAX
|
||||
# define MB_CUR_MAX gl_MB_CUR_MAX ()
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#endif
|
||||
@PRAGMA_COLUMNS@
|
||||
|
||||
#if defined _GL_ALREADY_INCLUDING_STRING_H
|
||||
#if defined _@GUARD_PREFIX@_ALREADY_INCLUDING_STRING_H
|
||||
/* Special invocation convention:
|
||||
- On OS X/NetBSD we have a sequence of nested includes
|
||||
<string.h> -> <strings.h> -> "string.h"
|
||||
|
@ -34,12 +34,12 @@
|
|||
|
||||
#ifndef _@GUARD_PREFIX@_STRING_H
|
||||
|
||||
#define _GL_ALREADY_INCLUDING_STRING_H
|
||||
#define _@GUARD_PREFIX@_ALREADY_INCLUDING_STRING_H
|
||||
|
||||
/* The include_next requires a split double-inclusion guard. */
|
||||
#@INCLUDE_NEXT@ @NEXT_STRING_H@
|
||||
|
||||
#undef _GL_ALREADY_INCLUDING_STRING_H
|
||||
#undef _@GUARD_PREFIX@_ALREADY_INCLUDING_STRING_H
|
||||
|
||||
#ifndef _@GUARD_PREFIX@_STRING_H
|
||||
#define _@GUARD_PREFIX@_STRING_H
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
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 _GL_UNISTD_INLINE _GL_EXTERN_INLINE
|
||||
#include <config.h>
|
||||
|
||||
#define _GL_UNISTD_INLINE _GL_EXTERN_INLINE
|
||||
#include <unistd.h>
|
||||
typedef int dummy;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# stdint.m4
|
||||
# serial 63
|
||||
# serial 64
|
||||
dnl Copyright (C) 2001-2024 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
@ -158,7 +158,7 @@ uintmax_t j = UINTMAX_MAX;
|
|||
|| defined __clang__)
|
||||
int k = _Generic (SIZE_MAX, size_t: 0);
|
||||
#elif (2 <= __GNUC__ || 4 <= __clang_major__ || defined __IBM__TYPEOF__ \
|
||||
|| (0x5110 <= __SUNPRO_C && !__STDC__))
|
||||
|| (0x5110 <= __SUNPRO_C && !__STDC__) || 1939 <= _MSC_VER)
|
||||
extern size_t k;
|
||||
extern __typeof__ (SIZE_MAX) k;
|
||||
#endif
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# stdlib_h.m4
|
||||
# serial 82
|
||||
# serial 84
|
||||
dnl Copyright (C) 2007-2024 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
@ -41,20 +41,21 @@ AC_DEFUN_ONCE([gl_STDLIB_H],
|
|||
AC_REQUIRE([gt_LOCALE_EN_UTF8])
|
||||
AC_CACHE_CHECK([whether MB_CUR_MAX is correct],
|
||||
[gl_cv_macro_MB_CUR_MAX_good],
|
||||
[
|
||||
dnl Initial guess, used when cross-compiling or when no suitable locale
|
||||
dnl is present.
|
||||
changequote(,)dnl
|
||||
case "$host_os" in
|
||||
# Guess no on Solaris and Haiku.
|
||||
solaris* | haiku*) gl_cv_macro_MB_CUR_MAX_good="guessing no" ;;
|
||||
# Guess yes otherwise.
|
||||
*) gl_cv_macro_MB_CUR_MAX_good="guessing yes" ;;
|
||||
esac
|
||||
changequote([,])dnl
|
||||
if test "$LOCALE_EN_UTF8" != none; then
|
||||
AC_RUN_IFELSE(
|
||||
[AC_LANG_SOURCE([[
|
||||
[AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM([[#include <stdlib.h>
|
||||
]],
|
||||
[[return !!MB_CUR_MAX;]])
|
||||
],
|
||||
[dnl Initial guess, used when cross-compiling or when no suitable locale
|
||||
dnl is present.
|
||||
# Guess no on Solaris and Haiku, yes otherwise.
|
||||
AS_CASE([$host_os],
|
||||
[solaris* | haiku*],
|
||||
[gl_cv_macro_MB_CUR_MAX_good="guessing no"],
|
||||
[gl_cv_macro_MB_CUR_MAX_good="guessing yes"])
|
||||
if test "$LOCALE_EN_UTF8" != none; then
|
||||
AC_RUN_IFELSE(
|
||||
[AC_LANG_SOURCE([[
|
||||
#include <locale.h>
|
||||
#include <stdlib.h>
|
||||
int main ()
|
||||
|
@ -67,15 +68,21 @@ int main ()
|
|||
}
|
||||
return result;
|
||||
}]])],
|
||||
[gl_cv_macro_MB_CUR_MAX_good=yes],
|
||||
[gl_cv_macro_MB_CUR_MAX_good=no],
|
||||
[:])
|
||||
fi
|
||||
[gl_cv_macro_MB_CUR_MAX_good=yes],
|
||||
[gl_cv_macro_MB_CUR_MAX_good=no],
|
||||
[:])
|
||||
fi
|
||||
],
|
||||
[gl_cv_macro_MB_CUR_MAX_good="link failed - so no"])
|
||||
])
|
||||
case "$gl_cv_macro_MB_CUR_MAX_good" in
|
||||
*yes) ;;
|
||||
*) REPLACE_MB_CUR_MAX=1 ;;
|
||||
esac
|
||||
AS_CASE([$gl_cv_macro_MB_CUR_MAX_good],
|
||||
[*yes],
|
||||
[],
|
||||
["link failed - so no"],
|
||||
[# 4 suffices as a workaround in Android NDK 16,
|
||||
# the only known platform with the bug.
|
||||
REPLACE_MB_CUR_MAX=4],
|
||||
[REPLACE_MB_CUR_MAX="(-1)"])
|
||||
|
||||
AC_CHECK_DECLS_ONCE([ecvt])
|
||||
if test $ac_cv_have_decl_ecvt = no; then
|
||||
|
|
Loading…
Add table
Reference in a new issue