[lltx] lualatex-math cannot find unpack function

Wolfgang Jeltsch g9ks157k at acme.softbase.org
Sat Aug 3 19:20:41 CEST 2013


Am Samstag, den 03.08.2013, 17:13 +0200 schrieb Ulrike Fischer:
> Am Sat, 3 Aug 2013 16:40:20 +0200 schrieb Martin Schröder:
> 
> > 2013/8/3 Wolfgang Jeltsch <g9ks157k at acme.softbase.org>:
> >> if I import both amsmath and lualatex-math, I get the following error
> >> message when LuaLaTeX tries to process \begin{document}:
> >>
> >> ! LuaTeX error
> >> .../texmf-dist/tex/lualatex/lualatex-math/lualatex-math.lua:46:
> >> attempt to call upvalue 'unpack' (a nil value)
> >> stack traceback:
> >>         .../texmf-dist/tex/lualatex/lualatex-math/lualatex-math.lua:46:
> >>         in function 'print_class_fam_slot'
> >>         [string "\directlua "]:1: in main chunk.
> >> \__lltxmath_set_mathchar:NN ...\int_eval:n {`#2})}
> >>                                                   \scan_stop:
> >>
> >> What is the reason for this?
> > 
> > Which version of LuaTeX do you use?
> 
> I can reproduce the problem on TeXLive 2013 with 
> This is LuaTeX, Version beta-0.76.0-2013061707

This is also the version I’m using, except that the last digit is 8
instead of 7.

> and this example:
> 
> \documentclass[]{article}
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> \usepackage{amsmath}
> \usepackage{lualatex-math}
> \begin{document}
> blub
> \end{document}

Yes, this is pretty much my test document that triggers this error.

I think I have found the source of the problem. In Lua 5.1, unpack is a
global function, while in Lua 5.2, it is a field of the global variable
table. To ensure compatibility with both Lua versions, some Lua files
(lualibs-basic-merged.lua, lualibs-lua.lua, and luaotfload-merged.lua)
contain the following code:

    if not table.unpack then
      table.unpack=_G.unpack
    elseif not unpack then
      _G.unpack=table.unpack
    end

By adding this code to lualatex-math.lua at an appropriate place, the
issue with lualatex-math and amsmath was fixed.

I will send a patch to Philipp Stephani.

Best wishes,
Wolfgang



More information about the lualatex-dev mailing list