[lltx] filecontents fails with ualatex

Ulrike Fischer news3 at nililand.de
Thu Oct 6 15:24:13 CEST 2011

Am Thu, 6 Oct 2011 14:59:42 +0200 schrieb Heiko Oberdiek:

>> This here fails for me with lualatex on the second compilation:
>> \documentclass{article}
>> \usepackage{filecontents}
>> \begin{filecontents*}{test-output3}
>> abcx
>> \end{filecontents*}
>> \begin{document}
>> blub
>> \end{document}
>> ! I can't write on file `test-output3.tex'.
> Works for me in TL/Linux: beta-0.70.1-2011061416 (rev 4277).

Fails for me with the luatex from miktex 

This is LuaTeX, Version beta-0.70.1-2011080216 (rev 4277)  

But works with a windows binary from a recent context minimals.

This is LuaTeX, Version beta-0.70.1-2011100107 (rev 4277)

(I wished the miktex luatex would like e.g. xetex say that it is
from miktex. That would be less confusing when comparing versions).

> Test file for "luatex --ini":
> \catcode`\{=1
> \catcode`\}=2
> \immediate\openout4=test-output3
> \immediate\write4{abcx-1}
> \immediate\closeout4
> \immediate\openout4=test-output3
> \immediate\write4{abcx-2}
> \immediate\closeout4
> \csname @@\endcsname\end

Well overwriting an existing file is in itself not a problem. E.g.
there is no problem with aux or toc files. It looks more like a
timing problem. If I remove the inputcheck from filecontents

  \openin\@inputcheck#1 %
    \@latex at warning@no at line%
        {Writing file `\@currdir#1'}%
  \else %
    \@latex at warning@no at line%
        {Overwriting file `\@currdir#1'}%
  \fi %

it works without problem.  

Ulrike Fischer 

More information about the lualatex-dev mailing list