<div dir="ltr">We could, but we don't have MS compatibility in these token flags. We would have to add a flag or implement these as identifier hacks in the parser.<div><br></div><div>Is it worth it? We also have all of these aliases which are just as non-conforming:</div>
<div><div>ALIAS("_cdecl"           , __cdecl    , KEYMS | KEYBORLAND)</div><div>ALIAS("_fastcall"        , __fastcall , KEYMS | KEYBORLAND)</div><div>ALIAS("_stdcall"         , __stdcall  , KEYMS | KEYBORLAND)</div>
<div>ALIAS("_thiscall"        , __thiscall , KEYMS)</div><div>ALIAS("_uuidof"          , __uuidof   , KEYMS | KEYBORLAND)</div><div>ALIAS("_inline"          , inline     , KEYMS)</div><div>ALIAS("_declspec"        , __declspec , KEYMS)</div>
</div><div><br></div><div>Throwing these all under -fms-compatibility feels slightly pedantic.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Aug 22, 2014 at 10:38 AM, Richard Smith <span dir="ltr"><<a href="mailto:richard@metafoo.co.uk" target="_blank">richard@metafoo.co.uk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">This is not a conforming extension. Should it be under -fms-compatibility instead?</p><div class="HOEnZb">
<div class="h5">
<div class="gmail_quote">On 22 Aug 2014 10:15, "Reid Kleckner" <<a href="mailto:reid@kleckner.net" target="_blank">reid@kleckner.net</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Author: rnk<br>
Date: Fri Aug 22 11:52:57 2014<br>
New Revision: 216270<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=216270&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=216270&view=rev</a><br>
Log:<br>
-fms-extensions: Alias _intNN to __intNN<br>
<br>
Fixes build for SPEC 2000 CPU. MSVC disables these aliases under /Za,<br>
which enables stricter standards compliance. We don't currently have any<br>
way to disable them.<br>
<br>
Patch by Kevin Smith!<br>
<br>
Modified:<br>
    cfe/trunk/include/clang/Basic/TokenKinds.def<br>
    cfe/trunk/test/Parser/MicrosoftExtensions.cpp<br>
<br>
Modified: cfe/trunk/include/clang/Basic/TokenKinds.def<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/TokenKinds.def?rev=216270&r1=216269&r2=216270&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/TokenKinds.def?rev=216270&r1=216269&r2=216270&view=diff</a><br>


==============================================================================<br>
--- cfe/trunk/include/clang/Basic/TokenKinds.def (original)<br>
+++ cfe/trunk/include/clang/Basic/TokenKinds.def Fri Aug 22 11:52:57 2014<br>
@@ -545,8 +545,12 @@ KEYWORD(__multiple_inheritance        ,<br>
 KEYWORD(__virtual_inheritance         , KEYMS)<br>
 KEYWORD(__interface                   , KEYMS)<br>
 ALIAS("__int8"           , char       , KEYMS)<br>
+ALIAS("_int8"            , char       , KEYMS)<br>
 ALIAS("__int16"          , short      , KEYMS)<br>
+ALIAS("_int16"           , short      , KEYMS)<br>
 ALIAS("__int32"          , int        , KEYMS)<br>
+ALIAS("_int32"           , int        , KEYMS)<br>
+ALIAS("_int64"           , __int64    , KEYMS)<br>
 ALIAS("__wchar_t"        , wchar_t    , KEYMS)<br>
 ALIAS("_asm"             , asm        , KEYMS)<br>
 ALIAS("_alignof"         , __alignof  , KEYMS)<br>
<br>
Modified: cfe/trunk/test/Parser/MicrosoftExtensions.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Parser/MicrosoftExtensions.cpp?rev=216270&r1=216269&r2=216270&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Parser/MicrosoftExtensions.cpp?rev=216270&r1=216269&r2=216270&view=diff</a><br>


==============================================================================<br>
--- cfe/trunk/test/Parser/MicrosoftExtensions.cpp (original)<br>
+++ cfe/trunk/test/Parser/MicrosoftExtensions.cpp Fri Aug 22 11:52:57 2014<br>
@@ -226,6 +226,11 @@ void interface_test() {<br>
 }<br>
<br>
 __int64 x7 = __int64(0);<br>
+_int64 x8 = _int64(0);<br>
+static_assert(sizeof(_int64) == 8, "");<br>
+static_assert(sizeof(_int32) == 4, "");<br>
+static_assert(sizeof(_int16) == 2, "");<br>
+static_assert(sizeof(_int8) == 1, "");<br>
<br>
 int __identifier(generic) = 3;<br>
 int __identifier(int) = 4;<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu" target="_blank">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</blockquote></div>
</div></div><br>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
<br></blockquote></div><br></div>