<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Mar 14, 2014 at 5:31 PM, Yunzhong Gao <span dir="ltr"><<a href="mailto:Yunzhong_Gao@playstation.sony.com" target="_blank">Yunzhong_Gao@playstation.sony.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
  I do not know. Are these alternative tokens pretty much set or are we expecting to add more in the future? </blockquote><div><br></div><div>They're a fixed set, as defined by the C++ standard. It's unlikely that any more will be added.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Are<br>
  they recognized as keywords only under MSVC compat mode?<br></blockquote><div><br></div><div>They're not keywords, they're weird ways of spelling things like && and |. Under MSVC compat mode, we should not recognize them at all (MSVC doesn't do so in its default mode, and appears to treat them as macros in its "conforming" mode).</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  I guess we could have another __has_operator_token() test, but I can be convinced to rename __has_keyword()<br>
  to mean any (non-attribute) special tokens.<br></blockquote><div><br></div><div>You could instead provide an __is_identifier, which I think might be what you're really looking for here ("is this token usable as an identifier?").</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  Also, this proposed implementation is not testing those objective-c "at" keywords (only a keyword if after an "@"<br>
  in objc mode). I am not sure if this is a problem.</blockquote><div><br></div><div>I don't think that's a problem; that's a distinct namespace from the normal identifier/keyword/alternative token one.</div>
</div></div></div>