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

another texinfo.tex bug in \scanmacro



Hi Gavin, dear all,

(please keep cc)

Another problem with 6.1 has popped up, not being really
Debian specific. It is in the sources of sbcl (common lisp
interpreter).

I reduced the problem to the following minimal not-working
example:

>>>>>>>>>>>>>>>>
\input texinfo   @c -*-texinfo-*-

@iftex
@tex
\newif\ifdash
\long\def\dashp#1{\expandafter\setnext#1-\dashphelper}
\long\def\setnext#1-{\futurelet\next\dashphelper}
\long\def\dashphelper#1\dashphelper{
  \ifx\dashphelper\next\dashfalse\else\dashtrue\fi
}
\def\lw#1{\leavevmode\dashp{#1}\ifdash#1\else\hbox{#1}\fi}
@end tex
@end iftex

@macro lw{word}
@tex
\\lw{\word\}%
@end tex
@end macro

@code{@lw{aaa}}

@bye
>>>>>>>>>>>>>>>>>>>>>>>>>>>

and the error message is
/mnwe.texinfo:21: TeX capacity exceeded, sorry [text input levels=15].
\scanmacro ...atspaces }\scantokens {#1\texinfoc }
                                                  \aftermacro 
l.2 \lw{aaa}
            %
\scanmacro ...atspaces }\scantokens {#1\texinfoc }
                                                  \aftermacro 
l.2 \lw{aaa}
            %
\scanmacro ...atspaces }\scantokens {#1\texinfoc }
                                                  \aftermacro 
l.2 \lw{aaa}
            %
...
l.21 @code{@lw{aaa}}
                    
No pages of output.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

I did run the test with the version in Debian, as well as with the
latest code in svn (texinfo [version 2016-03-06.18]).

I also confirmed that with the version from 6.0 it works:
>>>>>>>>>>>>>>>>>>>>>>
This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) (preloaded format=etex)
 restricted \write18 enabled.
entering extended mode
(./mnwe.texinfo (/home/norbert/ti/texinfo.tex
Loading texinfo [version 2015-06-24.23]: pdf, fonts, markup, glyphs,
page headings, tables, conditionals, indexing, sectioning, toc, environments,
defuns, macros, cross references, insertions,
(/usr/share/texlive/texmf-dist/tex/generic/epsf/epsf.tex
This is `epsf.tex' v2.7.4 <14 February 2011>
) localization, formatting, and turning on texinfo input format.) [1] )
Output written on mnwe.dvi (1 page, 200 bytes).
Transcript written on mnwe.log.
>>>>>>>>>>>>>>>>>>>>>>

All the best

Norbert

------------------------------------------------------------------------
PREINING, Norbert                               http://www.preining.info
JAIST, Japan                                 TeX Live & Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0  ACF0 6CAC A448 860C DC13
------------------------------------------------------------------------


Reply to: