[tex-live] uninitialized line number in pdfTeX

Peter Breitenlohner peb at mppmu.mpg.de
Fri Sep 30 15:15:22 CEST 2011


On Wed, 21 Sep 2011, Karl Berry wrote:

> Taco, Akira, and Peter when you're back, and anyone else who's interested,
>
>    Date: Sat, 13 Aug 2011 07:11:24 +0200 (CEST)
>    From: Werner LEMBERG <wl at gnu.org>
>    ...
>    >     The attached texinfo file produces this error message
>    >       ./WarningProb.texi:-1162167622: Could not find image file [...]

> Let me draw your attention to our print_file_line procedure which prints
> a --file-line-error style message (in printing.w in luatex, tex.ch
> otherwise).  It starts like this:
>
>  level:=in_open;
>  while (level>0) and (full_source_filename_stack[level]=0) do
>    decr(level);
>
> That is, finding the topmost full_source_filename that is present.
> (In the problem case, the value for `level' turns out to be 1.)
> Fine.
>
> Now, the procedure continues by printing the line number as follows:
>
>    if level=in_open then print_int (line)
>    else print_int (line_stack[index+1-(in_open-level)]);
>
> We are in the else case (`in_open' is 2).  My question is, why
> isn't this line simply
>    else print_int (line_stack[level+1]);
> instead of the complicated expression?

Hi Karl,

thanks for your analysis.  I completely agree and in fact have changed the
sources in TL SVN (r24155) for the affected TeX engines accordingly
(including luaTeX - Taco please have a look).

I have also added a small test case for (non-pdf) e-TeX, provided this is
built, and the same test for pdfTeX.

Regards
Peter


More information about the tex-live mailing list