diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/polexpr/polexpr.sty')
-rw-r--r-- | Master/texmf-dist/tex/generic/polexpr/polexpr.sty | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/Master/texmf-dist/tex/generic/polexpr/polexpr.sty b/Master/texmf-dist/tex/generic/polexpr/polexpr.sty index 7d3dbb36bda..b652675d916 100644 --- a/Master/texmf-dist/tex/generic/polexpr/polexpr.sty +++ b/Master/texmf-dist/tex/generic/polexpr/polexpr.sty @@ -2,7 +2,7 @@ % License: LPPL 1.3c (author-maintained) % Usage: \input polexpr.sty (Plain or other macro formats) % or \usepackage{polexpr} (LaTeX macro format) -% Release 0.8.6 (2022/01/09) of polexpr.sty. This file inputs +% Release 0.8.7 (2022/05/14) of polexpr.sty. This file inputs % polexprcore.tex % polexprexpr.tex % polexprsturm.tex @@ -54,7 +54,7 @@ \XINTsetupcatcodes% (does \endlinechar13 in particular) \XINT_providespackage \ProvidesPackage{polexpr}% - [2022/01/09 v0.8.6 Polynomial expressions with rational coefficients (JFB)]% + [2022/05/14 v0.8.7 Polynomial expressions with rational coefficients (JFB)]% \begingroup \def\x#1/#2/#3 #4\xint:{#1#2#3}% \ifnum\expandafter\x\expanded{\csname ver@xintexpr.sty\endcsname}\xint: @@ -199,12 +199,15 @@ %% %% \poldef %% -\def\PolDef{\POL@chkopt\POL@oPolDef[x]}% -\def\POL@oPolDef[#1]#2#3{\poldef #2(#1):={#3};}% -\def\poldef{\edef\POL@restoresemicolon{\catcode59=\the\catcode59\relax}% - \catcode59 12 \POL@defpol}% +%% Ever since 1.0, catcode sanitisation was minimal and only handled +%% the semicolon. At last 0.8.7 uses \xintexprSafeCatcodes to enhance +%% compatibility with hostile contexts such as babel+french. This +%% adds overhead but at least is coherent with \xintdefvar/\xintdeffunc +\def\PolDef{\xintexprSafeCatcodes\POL@chkopt\POL@oPolDef[x]}% +\def\POL@oPolDef[#1]#2#3{\POL@defpol #2(#1):={#3};}% +\def\poldef{\xintexprSafeCatcodes\POL@defpol}% \def\POL@defpol #1(#2)#3=#4;{% - \POL@restoresemicolon + \xintexprRestoreCatcodes \edef\POL@polname{\xint_zapspaces #1 \xint_gobble_i}% \begingroup \unless\ifxintveryverbose\xintverbosefalse\fi @@ -214,7 +217,7 @@ %% the associated macros was then deconstructed in further analysis %% via non-expandable approach. At 0.8 the polynomial algebra has %% been implemented expandably allowing direct plug-in into \xintexpr - \xintdefvar __pol = subs(#4,#2=qraw({{P1.{0/1[0]}{1/1[0]}}}));% + \xintdefvar_a __pol = subs(#4,#2=qraw({{P1.{0/1[0]}{1/1[0]}}}));% \expandafter \endgroup \expandafter\def\expandafter\POL@result\expandafter |