summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/xint
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-11-23 23:04:29 +0000
committerKarl Berry <karl@freefriends.org>2015-11-23 23:04:29 +0000
commit471e31482a7fb618d03b6c1f3fe447153e915ff3 (patch)
tree3b7dd08f9b66146b63662f825db1af7aa613108b /Master/texmf-dist/tex/generic/xint
parent62337378571de2e36529d442dd4ca63bb3ba5b81 (diff)
xint (23nov15)
git-svn-id: svn://tug.org/texlive/trunk@38926 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/xint')
-rw-r--r--Master/texmf-dist/tex/generic/xint/xint.sty4
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintbinhex.sty4
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintcfrac.sty4
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintcore.sty6
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintexpr.sty197
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintfrac.sty8
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintgcd.sty4
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintkernel.sty9
-rw-r--r--Master/texmf-dist/tex/generic/xint/xintseries.sty4
-rw-r--r--Master/texmf-dist/tex/generic/xint/xinttools.sty4
10 files changed, 126 insertions, 118 deletions
diff --git a/Master/texmf-dist/tex/generic/xint/xint.sty b/Master/texmf-dist/tex/generic/xint/xint.sty
index f3f6a60ac36..9c485509d83 100644
--- a/Master/texmf-dist/tex/generic/xint/xint.sty
+++ b/Master/texmf-dist/tex/generic/xint/xint.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xint: Expandable operations on big integers
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty (loaded by xintcore.sty)
\XINT_providespackage
\ProvidesPackage{xint}%
- [2015/11/18 v1.2d Expandable operations on big integers (jfB)]%
+ [2015/11/22 v1.2e Expandable operations on big integers (jfB)]%
\long\def\xint_firstofthree #1#2#3{#1}%
\long\def\xint_secondofthree #1#2#3{#2}%
\long\def\xint_thirdofthree #1#2#3{#3}%
diff --git a/Master/texmf-dist/tex/generic/xint/xintbinhex.sty b/Master/texmf-dist/tex/generic/xint/xintbinhex.sty
index e7ecf94cbdc..b06dd6b8443 100644
--- a/Master/texmf-dist/tex/generic/xint/xintbinhex.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintbinhex.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintbinhex: Expandable binary and hexadecimal conversions
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintbinhex}%
- [2015/11/18 v1.2d Expandable binary and hexadecimal conversions (jfB)]%
+ [2015/11/22 v1.2e Expandable binary and hexadecimal conversions (jfB)]%
\newcount\xint_c_ii^xv \xint_c_ii^xv 32768
\newcount\xint_c_ii^xvi \xint_c_ii^xvi 65536
\newcount\xint_c_x^v \xint_c_x^v 100000
diff --git a/Master/texmf-dist/tex/generic/xint/xintcfrac.sty b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
index c2f058cb0b2..c2ee3e85658 100644
--- a/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintcfrac.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintcfrac: Expandable continued fractions with xint package
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintcfrac}%
- [2015/11/18 v1.2d Expandable continued fractions with xint package (jfB)]%
+ [2015/11/22 v1.2e Expandable continued fractions with xint package (jfB)]%
\def\xintCFrac {\romannumeral0\xintcfrac }%
\def\xintcfrac #1%
{%
diff --git a/Master/texmf-dist/tex/generic/xint/xintcore.sty b/Master/texmf-dist/tex/generic/xint/xintcore.sty
index bb65999b26b..94980e62be4 100644
--- a/Master/texmf-dist/tex/generic/xint/xintcore.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintcore.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintcore: Expandable arithmetic on big integers
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintcore}%
- [2015/11/18 v1.2d Expandable arithmetic on big integers (jfB)]%
+ [2015/11/22 v1.2e Expandable arithmetic on big integers (jfB)]%
\ifdefined\m@ne\let\xint_c_mone\m@ne
\else\csname newcount\endcsname\xint_c_mone \xint_c_mone -1 \fi
\newcount\xint_c_x^viii \xint_c_x^viii 100000000
@@ -529,7 +529,7 @@
#1\XINT_rsepbyviii_end_A 2345678%
\XINT_rsepbyviii_end_B 2345678\relax XX%
\R.\R.\R.\R.\R.\R.\R.\R.\W
- 1\Z!1\Z!1\Z!1\Z!1\Z!\W
+ 1\Z!1\Z!1\Z!1\Z!\W
1\R!1\R!1\R!1\R!1\R!1\R!1\R!1\R!\W
}%
\def\XINT_inc_pos_aa {\XINT_add_aa 100000001!1\Z!1\Z!1\Z!1\Z!\W }%
diff --git a/Master/texmf-dist/tex/generic/xint/xintexpr.sty b/Master/texmf-dist/tex/generic/xint/xintexpr.sty
index e65c9ecae28..5c2f726146b 100644
--- a/Master/texmf-dist/tex/generic/xint/xintexpr.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintexpr.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintexpr: Expandable expression parser
%% ---------------------------------------------------------------
@@ -81,7 +81,7 @@
\XINTsetupcatcodes%
\XINT_providespackage
\ProvidesPackage{xintexpr}%
- [2015/11/18 v1.2d Expandable expression parser (jfB)]%
+ [2015/11/22 v1.2e Expandable expression parser (jfB)]%
\catcode`! 11
\def\xint_gob_til_! #1!{}% catcode 11 ! default in xintexpr.sty code.
\edef\XINT_expr_lockscan#1!% not used for decimal numbers in xintexpr 1.2
@@ -509,10 +509,11 @@
}%
\def\XINT_expr_scanfunc_b #1%
{%
+ \ifx !#1\xint_dothis{(_}\fi
\ifcat \relax#1\xint_dothis{(_}\fi
\if (#1\xint_dothis{\xint_firstoftwo{(`}}\fi
- \if _#1\xint_dothis \XINT_expr_scanfunc_a \fi
\if @#1\xint_dothis \XINT_expr_scanfunc_a \fi
+ \if _#1\xint_dothis \XINT_expr_scanfunc_a \fi
\ifnum \xint_c_ix<1\string#1 \xint_dothis \XINT_expr_scanfunc_a \fi
\ifcat a#1\xint_dothis \XINT_expr_scanfunc_a \fi
\xint_orthat {(_}%
@@ -1261,6 +1262,43 @@
{\xint_zapspaces #2 \xint_gobble_i}\endcsname}%
\catcode`[ 12
\catcode`* 12
+\def\XINT_tmpa #1#2#3{%
+ \def #1##1%
+ {%
+ \ifcsname XINT_#3_func_##1\endcsname
+ \xint_dothis{\expandafter\expandafter
+ \csname XINT_#3_func_##1\endcsname\romannumeral`&&@#2}\fi
+ \ifcsname XINT_expr_onlitteral_##1\endcsname
+ \xint_dothis{\csname XINT_expr_onlitteral_##1\endcsname}\fi
+ \xint_orthat{\XINT_expr_unknown_function {##1}%
+ \expandafter\XINT_expr_func_unknown\romannumeral`&&@#2}%
+ }%
+}%
+\def\XINT_expr_unknown_function #1{\xintError:removed \xint_gobble_i {#1}}%
+\xintFor #1 in {expr,flexpr,iiexpr} \do {%
+ \expandafter\XINT_tmpa
+ \csname XINT_#1_op_`\expandafter\endcsname
+ \csname XINT_#1_oparen\endcsname
+ {#1}%
+}%
+\def\XINT_expr_func_unknown #1#2#3%
+ {\expandafter #1\expandafter #2\csname .=0\endcsname }%
+\def\XINT_expr_onlitteral_bool #1)%
+ {\expandafter\XINT_expr_getop\csname .=\xintBool{#1}\endcsname }%
+\def\XINT_expr_onlitteral_togl #1)%
+ {\expandafter\XINT_expr_getop\csname .=\xintToggle{#1}\endcsname }%
+\def\XINT_expr_onlitteral_protect #1)%
+ {\expandafter\XINT_expr_getop\csname .=\detokenize{#1}\endcsname }%
+\def\XINT_expr_func_break #1#2#3%
+ {\expandafter #1\expandafter #2\csname.=?\romannumeral`&&@\XINT_expr_unlock #3\endcsname }%
+\let\XINT_flexpr_func_break \XINT_expr_func_break
+\let\XINT_iiexpr_func_break \XINT_expr_func_break
+\def\XINT_expr_onlitteral_qint #1)%
+ {\expandafter\XINT_expr_getop\csname .=\xintiNum{#1}\endcsname }%
+\def\XINT_expr_onlitteral_qfrac #1)%
+ {\expandafter\XINT_expr_getop\csname .=\xintRaw{#1}\endcsname }%
+\def\XINT_expr_onlitteral_qfloat #1)%
+ {\expandafter\XINT_expr_getop\csname .=\XINTinFloatdigits{#1}\endcsname }%
\def\XINT_expr_op__ #1% op__ with two _'s
{%
\ifcsname XINT_expr_var_#1\endcsname
@@ -1276,82 +1314,89 @@
\def\XINT_expr_unknown_variable #1{\xintError:removed \xint_gobble_i {#1}}%
\let\XINT_flexpr_op__ \XINT_expr_op__
\let\XINT_iiexpr_op__ \XINT_expr_op__
-\catcode`: 12
-\def\xintdefvar #1:=#2;{%
- \edef\XINT_expr_tmpa{#1}%
- \edef\XINT_expr_tmpa
- {\expandafter\xint_zapspaces\detokenize\expandafter{\XINT_expr_tmpa} \xint_gobble_i}%
- \edef\XINT_expr_tmpb {\romannumeral0\xintbareeval #2\relax }%
- \ifxintverbose\xintMessage {info}{xintexpr}
- {Variable \XINT_expr_tmpa\space defined with value
- \expandafter\XINT_expr_unlock\XINT_expr_tmpb.}%
- \fi
- \expandafter\edef\csname XINT_expr_var_\XINT_expr_tmpa\endcsname
+\catcode`* 11
+\def\XINT_expr_defvar #1#2#3;{%
+ \edef\XINT_expr_tmpa{#2}%
+ \edef\XINT_expr_tmpa {\xint_zapspaces_o\XINT_expr_tmpa}%
+ \ifnum\expandafter\xintLength\expandafter{\XINT_expr_tmpa}=\z@
+ \xintMessage {xintexpr}{Warning}
+ {Error: impossible to declare variable with empty name.}%
+ \else
+ \edef\XINT_expr_tmpb {\romannumeral0#1#3\relax }%
+ \expandafter\edef\csname XINT_expr_var_\XINT_expr_tmpa\endcsname
{\expandafter\noexpand\XINT_expr_tmpb}%
- \expandafter\edef\csname XINT_expr_onlitteral_\XINT_expr_tmpa\endcsname
- {\noexpand\XINT_expr_getop\expandafter\noexpand\XINT_expr_tmpb *(}%
-}%
-\def\xintdefiivar #1:=#2;{%
- \edef\XINT_expr_tmpa{#1}%
- \edef\XINT_expr_tmpa
- {\expandafter\xint_zapspaces\detokenize\expandafter{\XINT_expr_tmpa} \xint_gobble_i}%
- \edef\XINT_expr_tmpb {\romannumeral0\xintbareiieval #2\relax }%
- \ifxintverbose\xintMessage {info}{xintexpr}
- {Variable \XINT_expr_tmpa\space defined with value
+ \expandafter\edef\csname XINT_expr_onlitteral_\XINT_expr_tmpa\endcsname
+ {\XINT_expr_precedence_*** *\expandafter\noexpand\XINT_expr_tmpb (}%
+ \ifxintverbose\xintMessage {xintexpr}{Info}
+ {Variable "\XINT_expr_tmpa" defined with value
\expandafter\XINT_expr_unlock\XINT_expr_tmpb.}%
+ \fi
\fi
- \expandafter\edef\csname XINT_expr_var_\XINT_expr_tmpa\endcsname
- {\expandafter\noexpand\XINT_expr_tmpb}%
- \expandafter\edef\csname XINT_expr_onlitteral_\XINT_expr_tmpa\endcsname
- {\noexpand\XINT_expr_getop\expandafter\noexpand\XINT_expr_tmpb *(}%
}%
-\def\xintdeffloatvar #1:=#2;{%
+\catcode`* 12
+\catcode`: 12
+\def\xintdefvar #1:={\XINT_expr_defvar\xintbareeval {#1}}%
+\def\xintdefiivar #1:={\XINT_expr_defvar\xintbareiieval {#1}}%
+\def\xintdeffloatvar #1:={\XINT_expr_defvar\xintbarefloateval {#1}}%
+\catcode`: 11
+\def\xintunassignvar #1{%
\edef\XINT_expr_tmpa{#1}%
- \edef\XINT_expr_tmpa
- {\expandafter\xint_zapspaces\detokenize\expandafter{\XINT_expr_tmpa}
- \xint_gobble_i}%
- \edef\XINT_expr_tmpb {\romannumeral0\xintbarefloateval #2\relax }%
- \ifxintverbose\xintMessage {info}{xintexpr}
- {Variable \XINT_expr_tmpa\space defined with value
- \expandafter\XINT_expr_unlock\XINT_expr_tmpb.}%
+ \edef\XINT_expr_tmpa {\xint_zapspaces_o\XINT_expr_tmpa}%
+ \ifcsname XINT_expr_var_\XINT_expr_tmpa\endcsname
+ \ifnum\expandafter\xintLength\expandafter{\XINT_expr_tmpa}=\@ne
+ \expandafter\XINT_expr_makedummy \XINT_expr_tmpa
+ \ifxintverbose\xintMessage {xintexpr}{Info}
+ {Character \XINT_expr_tmpa\space usable as dummy variable (if letter).}%
+ \fi
+ \else
+ \expandafter\edef\csname XINT_expr_var_\XINT_expr_tmpa\endcsname
+ {\csname .=0\endcsname\noexpand\XINT_expr_undefined {\XINT_expr_tmpa}}%
+ \expandafter\edef\csname XINT_expr_onlitteral_\XINT_expr_tmpa\endcsname
+ {\csname .=0\endcsname\noexpand\XINT_expr_undefined {\XINT_expr_tmpa}*}%
+ \ifxintverbose\xintMessage {xintexpr}{Info}
+ {Variable \XINT_expr_tmpa\space has been ``unassigned''.}%
+ \fi
+ \fi
+ \else
+ \xintMessage {xintexpr}{Warning}
+ {Error: there was no such variable \XINT_expr_tmpa\space to unassign.}%
\fi
- \expandafter\edef\csname XINT_expr_var_\XINT_expr_tmpa\endcsname
- {\expandafter\noexpand\XINT_expr_tmpb}%
- \expandafter\edef\csname XINT_expr_onlitteral_\XINT_expr_tmpa\endcsname
- {\noexpand\XINT_expr_getop\expandafter\noexpand\XINT_expr_tmpb *(}%
}%
-\catcode`: 11
-\def\XINT_tmpa #1%
+\def\XINT_expr_undefined #1{\xintError:replaced_by_zero\xint_gobble_i {#1}}%
+\catcode`* 11
+\def\XINT_expr_makedummy #1%
{%
\expandafter\def\csname XINT_expr_var_#1\endcsname ##1\relax !#1##2%
{##2##1\relax !#1##2}%
\expandafter\def\csname XINT_expr_onlitteral_#1\endcsname ##1\relax !#1##2%
- {\XINT_expr_getop ##2*(##1\relax !#1##2}%
+ {\XINT_expr_precedence_*** *##2(##1\relax !#1##2}%
}%
-\xintApplyUnbraced \XINT_tmpa {abcdefghijklmnopqrstuvwxyz}%
-\xintApplyUnbraced \XINT_tmpa {ABCDEFGHIJKLMNOPQRSTUVWXYZ}%
+\xintApplyUnbraced \XINT_expr_makedummy {abcdefghijklmnopqrstuvwxyz}%
+\xintApplyUnbraced \XINT_expr_makedummy {ABCDEFGHIJKLMNOPQRSTUVWXYZ}%
\edef\XINT_expr_var_nil {\expandafter\noexpand\csname .= \endcsname}%
\edef\XINT_expr_onlitteral_nil
- {\noexpand\XINT_expr_getop\expandafter\noexpand\csname .= \endcsname *(}%
+ {\XINT_expr_precedence_*** *\expandafter\noexpand\csname .= \endcsname (}%
+\catcode`* 12
\edef\XINT_expr_var_omit #1\relax !{1\string !?!\relax !}%
\edef\XINT_expr_var_abort #1\relax !{1\string !?^\relax !}%
\def\XINT_expr_op_!? #1#2\relax {\expandafter\XINT_expr_foundend\csname .=#2\endcsname}%
\let\XINT_iiexpr_op_!? \XINT_expr_op_!?
\let\XINT_flexpr_op_!? \XINT_expr_op_!?
-\catcode`? 3
+\catcode`? 3 \catcode`* 11
\def\XINT_expr_var_@ #1~#2{#2#1~#2}%
\expandafter\let\csname XINT_expr_var_@1\endcsname \XINT_expr_var_@
\expandafter\def\csname XINT_expr_var_@2\endcsname #1~#2#3{#3#1~#2#3}%
\expandafter\def\csname XINT_expr_var_@3\endcsname #1~#2#3#4{#4#1~#2#3#4}%
\expandafter\def\csname XINT_expr_var_@4\endcsname #1~#2#3#4#5{#5#1~#2#3#4#5}%
-\def\XINT_expr_onlitteral_@ #1~#2{\XINT_expr_getop #2*(#1~#2}%
+\def\XINT_expr_onlitteral_@ #1~#2{\XINT_expr_precedence_*** *#2(#1~#2}%
\expandafter\let\csname XINT_expr_onlitteral_@1\endcsname \XINT_expr_onlitteral_@
\expandafter\def\csname XINT_expr_onlitteral_@2\endcsname #1~#2#3%
- {\XINT_expr_getop #3*(#1~#2#3}%
+ {\XINT_expr_precedence_*** *#3(#1~#2#3}%
\expandafter\def\csname XINT_expr_onlitteral_@3\endcsname #1~#2#3#4%
- {\XINT_expr_getop #4*(#1~#2#3#4}%
+ {\XINT_expr_precedence_*** *#4(#1~#2#3#4}%
\expandafter\def\csname XINT_expr_onlitteral_@4\endcsname #1~#2#3#4#5%
- {\XINT_expr_getop #5*(#1~#2#3#4#5}%
+ {\XINT_expr_precedence_*** *#5(#1~#2#3#4#5}%
+\catcode`* 12
\def\XINT_expr_func_@@ #1#2#3#4~#5?%
{%
\expandafter#1\expandafter#2\romannumeral0\xintntheltnoexpand
@@ -1386,43 +1431,6 @@
{\XINT_expr_unlock#3}{#7}#4~#5~#6~#7?%
}%
\catcode`? 11
-\def\XINT_tmpa #1#2#3{%
- \def #1##1%
- {%
- \ifcsname XINT_#3_func_##1\endcsname
- \xint_dothis{\expandafter\expandafter
- \csname XINT_#3_func_##1\endcsname\romannumeral`&&@#2}\fi
- \ifcsname XINT_expr_onlitteral_##1\endcsname
- \xint_dothis{\csname XINT_expr_onlitteral_##1\endcsname}\fi
- \xint_orthat{\XINT_expr_unknown_function {##1}%
- \expandafter\XINT_expr_func_unknown\romannumeral`&&@#2}%
- }%
-}%
-\def\XINT_expr_unknown_function #1{\xintError:removed \xint_gobble_i {#1}}%
-\xintFor #1 in {expr,flexpr,iiexpr} \do {%
- \expandafter\XINT_tmpa
- \csname XINT_#1_op_`\expandafter\endcsname
- \csname XINT_#1_oparen\endcsname
- {#1}%
-}%
-\def\XINT_expr_func_unknown #1#2#3%
- {\expandafter #1\expandafter #2\csname .=0\endcsname }%
-\def\XINT_expr_onlitteral_bool #1)%
- {\expandafter\XINT_expr_getop\csname .=\xintBool{#1}\endcsname }%
-\def\XINT_expr_onlitteral_togl #1)%
- {\expandafter\XINT_expr_getop\csname .=\xintToggle{#1}\endcsname }%
-\def\XINT_expr_onlitteral_protect #1)%
- {\expandafter\XINT_expr_getop\csname .=\detokenize{#1}\endcsname }%
-\def\XINT_expr_func_break #1#2#3%
- {\expandafter #1\expandafter #2\csname.=?\romannumeral`&&@\XINT_expr_unlock #3\endcsname }%
-\let\XINT_flexpr_func_break \XINT_expr_func_break
-\let\XINT_iiexpr_func_break \XINT_expr_func_break
-\def\XINT_expr_onlitteral_qint #1)%
- {\expandafter\XINT_expr_getop\csname .=\xintiNum{#1}\endcsname }%
-\def\XINT_expr_onlitteral_qfrac #1)%
- {\expandafter\XINT_expr_getop\csname .=\xintRaw{#1}\endcsname }%
-\def\XINT_expr_onlitteral_qfloat #1)%
- {\expandafter\XINT_expr_getop\csname .=\XINTinFloatdigits{#1}\endcsname }%
\def\XINT_expr_onlitteral_seq
{\expandafter\XINT_expr_onlitteral_seq_f\romannumeral`&&@\XINT_expr_onlitteral_seq_a {}}%
\def\XINT_expr_onlitteral_seq_f #1#2{\xint_c_xviii `{seqx}#2)\relax #1}%
@@ -2183,12 +2191,11 @@
\catcode`: 12
\def\XINT_tmpa #1#2#3#4%
{%
- \def #1##1(##2):=##3;{%
- \edef\XINT_expr_tmpa{##1}%
- \edef\XINT_expr_tmpa
- {\expandafter\xint_zapspaces\detokenize\expandafter{\XINT_expr_tmpa} \xint_gobble_i}%
+ \def #1##1(##2)##3=##4;{%
+ \edef\XINT_expr_tmpa {##1}%
+ \edef\XINT_expr_tmpa {\xint_zapspaces_o \XINT_expr_tmpa}%
\def\XINT_expr_tmpb {0}%
- \def\XINT_expr_tmpc {##3}%
+ \def\XINT_expr_tmpc {##4}%
\xintFor ####1 in {##2} \do
{\edef\XINT_expr_tmpb {\the\numexpr\XINT_expr_tmpb+\xint_c_i}%
\edef\XINT_expr_tmpc {subs(\unexpanded\expandafter{\XINT_expr_tmpc},%
@@ -2199,7 +2206,7 @@
\expandafter\XINT_expr_defuserfunc
\csname XINT_#2_func_\XINT_expr_tmpa\expandafter\endcsname
\csname XINT_#2_userfunc_\XINT_expr_tmpa\endcsname
- \ifxintverbose\xintMessage {info}{xintexpr}
+ \ifxintverbose\xintMessage {xintexpr}{Info}
{Function \XINT_expr_tmpa\space for \string\xint #4 parser
associated to \string\XINT_#2_userfunc_\XINT_expr_tmpa\space
with meaning \expandafter\meaning
@@ -2430,7 +2437,7 @@
{\scantokens\expandafter{\expandafter\XINT_newexpr_clean\meaning\XINT_tmpb}}@
\the\toks0\expandafter{\XINT_tmpa{%%1}{%%2}{%%3}{%%4}{%%5}{%%6}{%%7}{%%8}{%%9}}@
%1{\ifxintverbose
- \xintMessage{info}{xintexpr}@
+ \xintMessage{xintexpr}{Info}@
{\string%3\space now with meaning \meaning%3}@
\fi}@
}@
diff --git a/Master/texmf-dist/tex/generic/xint/xintfrac.sty b/Master/texmf-dist/tex/generic/xint/xintfrac.sty
index 9e9feac02a3..50a961d49cd 100644
--- a/Master/texmf-dist/tex/generic/xint/xintfrac.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintfrac.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintfrac: Expandable operations on fractions
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintfrac}%
- [2015/11/18 v1.2d Expandable operations on fractions (jfB)]%
+ [2015/11/22 v1.2e Expandable operations on fractions (jfB)]%
\def\XINT_cntSgnFork #1%
{%
\ifcase #1\expandafter\xint_secondofthree
@@ -2502,12 +2502,12 @@
\def\XINT_flfac_noopt #1#2\xint_relax
{%
\expandafter\XINT_FL_fac_start\expandafter
- {\the\numexpr #2}{\XINTdigits}{#1[\XINTdigits]}%
+ {\the\numexpr \xintNum{#2}}{\XINTdigits}{#1[\XINTdigits]}%
}%
\def\XINT_flfac_opt #1[\xint_relax #2]#3%
{%
\expandafter\XINT_FL_fac_start\expandafter
- {\the\numexpr #3\expandafter}\expandafter{\the\numexpr#2}{#1[#2]}%
+ {\the\numexpr \xintNum{#3}\expandafter}\expandafter{\the\numexpr#2}{#1[#2]}%
}%
\def\XINT_FL_fac_start #1%
{%
diff --git a/Master/texmf-dist/tex/generic/xint/xintgcd.sty b/Master/texmf-dist/tex/generic/xint/xintgcd.sty
index 85aaeb0402c..874385ef298 100644
--- a/Master/texmf-dist/tex/generic/xint/xintgcd.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintgcd.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintgcd: Euclidean algorithm with xint package
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintgcd}%
- [2015/11/18 v1.2d Euclide algorithm with xint package (jfB)]%
+ [2015/11/22 v1.2e Euclide algorithm with xint package (jfB)]%
\def\xintGCD {\romannumeral0\xintgcd }%
\def\xintgcd #1%
{%
diff --git a/Master/texmf-dist/tex/generic/xint/xintkernel.sty b/Master/texmf-dist/tex/generic/xint/xintkernel.sty
index d9be3cb0e8c..79a9bebef7d 100644
--- a/Master/texmf-dist/tex/generic/xint/xintkernel.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintkernel.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintkernel: Paraphernalia for the xint packages
%% ---------------------------------------------------------------
@@ -156,7 +156,7 @@
\fi
\XINT_providespackage
\ProvidesPackage {xintkernel}%
- [2015/11/18 v1.2d Paraphernalia for the xint packages (jfB)]%
+ [2015/11/22 v1.2e Paraphernalia for the xint packages (jfB)]%
\chardef\xint_c_ 0
\chardef\xint_c_i 1
\chardef\xint_c_ii 2
@@ -245,6 +245,7 @@
\long\def\xintdothis #1#2\xintorthat #3{\fi #1}%
\let\xintorthat \xint_firstofone
\def\xint_zapspaces #1 #2{#1#2\xint_zapspaces }% v1.1
+\def\xint_zapspaces_o #1{\expandafter\xint_zapspaces#1 \xint_gobble_i}%
\def\xintodef #1{\expandafter\def\expandafter#1\expandafter }%
\def\xintoodef #1{\expandafter\expandafter\expandafter\def
\expandafter\expandafter\expandafter#1%
@@ -304,8 +305,8 @@
\edef\XINT_length_finish_c #1#2\Z #3%
{\noexpand\expandafter\space\noexpand\the\numexpr #3+#1\relax}%
\def\xintMessage #1#2#3{%
- \immediate\write16{Package #1 (#2) on line \the\inputlineno :}%
- \immediate\write16{\space\space\space\space#3}%
+ \immediate\write128{Package #1 #2: (on line \the\inputlineno)}%
+ \immediate\write128{\space\space\space\space#3}%
}%
\newif\ifxintverbose
\XINT_restorecatcodes_endinput%
diff --git a/Master/texmf-dist/tex/generic/xint/xintseries.sty b/Master/texmf-dist/tex/generic/xint/xintseries.sty
index 9f75009fac5..cdaf499c432 100644
--- a/Master/texmf-dist/tex/generic/xint/xintseries.sty
+++ b/Master/texmf-dist/tex/generic/xint/xintseries.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xintseries: Expandable partial sums with xint package
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xintseries}%
- [2015/11/18 v1.2d Expandable partial sums with xint package (jfB)]%
+ [2015/11/22 v1.2e Expandable partial sums with xint package (jfB)]%
\def\xintSeries {\romannumeral0\xintseries }%
\def\xintseries #1#2%
{%
diff --git a/Master/texmf-dist/tex/generic/xint/xinttools.sty b/Master/texmf-dist/tex/generic/xint/xinttools.sty
index dbf0242b010..80e85234943 100644
--- a/Master/texmf-dist/tex/generic/xint/xinttools.sty
+++ b/Master/texmf-dist/tex/generic/xint/xinttools.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%% ---------------------------------------------------------------
-%% The xint bundle v1.2d 2015/11/18
+%% The xint bundle v1.2e 2015/11/22
%% Copyright (C) 2013-2015 by Jean-Francois Burnol
%% xinttools: Expandable and non-expandable utilities
%% ---------------------------------------------------------------
@@ -70,7 +70,7 @@
\XINTsetupcatcodes% defined in xintkernel.sty
\XINT_providespackage
\ProvidesPackage{xinttools}%
- [2015/11/18 v1.2d Expandable and non-expandable utilities (jfB)]%
+ [2015/11/22 v1.2e Expandable and non-expandable utilities (jfB)]%
\newtoks\XINT_toks
\xint_firstofone{\let\XINT_sptoken= } %<- space here!
\def\xintgodef {\global\xintodef }%