View Issue Details

IDProjectCategoryView StatusLast Update
0000722luatexluatex bugpublic2015-12-07 19:09
ReporterPaul Isambert Assigned ToHans Hagen  
PrioritynormalSeverityminorReproducibilityhave not tried
Status closedResolutionnot fixable 
Product Version0.66.0 
Target Version0.90.0Fixed in Version0.86.0 
Summary0000722: Strange behavior of ^^ notation.
DescriptionThe ^^ notation for character seems to have problems parsing input in some cases. See code below: all other engines typeset "(30)(96)123456789" in the first three cases, while LuaTeX doesn't do so in case 2, but instead typesets "^56789" (with an error, of course), i.e. it seems to detect ^^-notation with 5 superscripts, so it takes the following five characters, realizes it won't do because the first one is a space, forgets to put them back, and then analyzes "(^^)(^^^) = ^^(30) = ^". Why case 2 and 3 differ is a mystery.

Case 4-6 do similarly, with "(30)(30)123456789" and (strangely enough)"^6789" in case 5, i.e. it works like "(^^)(^^^)" again, missing a superscript.

Finally, there is no wrong analysis in case the ^^-sequence isn't an argument to a command. E.g. "a^^^^^ 123456789" correctly prints "a(30)(96)123456789".
Steps To Reproduce\catcode`\^^^=13
\def^^^{(30)}
\catcode`\^^ =13
\def^^ {(96)}

\def\do#1{0000001}

1. \do{^^^^^ }123456789\par
2. \do^^^^^ 123456789\par
3. \do ^^^^^ 123456789\par

4. \do{^^^^^^ }123456789\par
5. \do^^^^^^ 123456789\par
6. \do ^^^^^^ 123456789\par

\end
TagsNo tags attached.

Activities

Taco

2015-11-17 17:23

administrator   ~0001548

This happens because luatex does indeed accept 5- and 6-byte forms of the double-supscript notation.
2. and 5. fail because luatex is still trying to end the control sequence started with 'do' when the caret notation appears in the file.

Hans Hagen

2015-12-07 19:09

manager   ~0001561

only traditional ^^ and explicit ^^^^XXXX and ^^^^^^XXXXX supported now

Issue History

Date Modified Username Field Change
2011-09-30 08:02 Paul Isambert New Issue
2015-10-24 21:05 Hans Hagen Assigned To => Hans Hagen
2015-10-24 21:05 Hans Hagen Status new => acknowledged
2015-10-24 21:06 Hans Hagen Assigned To Hans Hagen => Taco
2015-10-24 21:06 Hans Hagen Status acknowledged => assigned
2015-11-05 11:09 Hans Hagen Target Version => 0.85.0
2015-11-11 11:50 Hans Hagen Target Version 0.85.0 => 0.90.0
2015-11-17 17:23 Taco Note Added: 0001548
2015-11-17 17:23 Taco Status assigned => resolved
2015-11-17 17:23 Taco Resolution open => not fixable
2015-12-07 19:09 Hans Hagen Note Added: 0001561
2015-12-07 19:09 Hans Hagen Status resolved => closed
2015-12-07 19:09 Hans Hagen Assigned To Taco => Hans Hagen
2015-12-07 19:09 Hans Hagen Fixed in Version => 0.86.0