<html><head></head><body><div style="font-family:courier new, courier, monaco, monospace, sans-serif;font-size:medium;"><div style="font-family:courier new, courier, monaco, monospace, sans-serif;font-size:medium;"><div style="font-family:courier new, courier, monaco, monospace, sans-serif;font-size:medium;"><div><div><div dir="ltr">>Definitely a bug. The TeXbook defines the behaviour of \if and \ifcat,<br></div><div dir="ltr">>and all control sequences are considered to have character code 256<br></div><div dir="ltr">>and category code 16, unless \let equal to a non-active character, in<br></div><div dir="ltr">>which case they have the value of that character.</div></div><div><br></div><div>After comparing the relevant code in </div><div><br></div><div>texlive/source/texk/web2c/luatexdir/tex/conditional.w (function void conditional(void))</div><div><br></div><div>and </div><div><br></div><div>texlive/source/texk/web2c/xetexdir/xetex.web (@<Test if two characters match@>;)</div><div><br></div><div>I think they are identical. Note these things process \if and \ifcat commands.<br></div><div><br></div><div>A.S.</div><div><br></div><div><span style="font-family:courier, monaco, monospace, sans-serif;">----------------------</span><br style="font-family:courier, monaco, monospace, sans-serif;"><span style="font-family:courier, monaco, monospace, sans-serif;">Apostolos Syropoulos</span><br style="font-family:courier, monaco, monospace, sans-serif;"><span style="font-family:courier, monaco, monospace, sans-serif;">Xanthi, Greece</span></div></div><br></div></div><div id="yahoo_quoted_2621880029" class="yahoo_quoted"><div><br></div><br></div></div></body></html>