From: Chris Lattner Date: Thu, 14 Oct 2010 00:24:10 +0000 (+0000) Subject: allow I128 suffixes in msextensions mode just like i128 suffixes, patch X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c637415a96c16abc7e28ef83c6c105716f7e8936;p=clang allow I128 suffixes in msextensions mode just like i128 suffixes, patch by Martin Vejnar! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116460 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Lex/LiteralSupport.cpp b/lib/Lex/LiteralSupport.cpp index 3b739b3d0b..2eabd7edcd 100644 --- a/lib/Lex/LiteralSupport.cpp +++ b/lib/Lex/LiteralSupport.cpp @@ -431,6 +431,7 @@ NumericLiteralParser(const char *begin, const char *end, } continue; // Success. case 'i': + case 'I': if (PP.getLangOptions().Microsoft) { if (isFPConstant || isLong || isLongLong) break; @@ -467,7 +468,6 @@ NumericLiteralParser(const char *begin, const char *end, } } // fall through. - case 'I': case 'j': case 'J': if (isImaginary) break; // Cannot be repeated. diff --git a/test/Lexer/ms-extensions.c b/test/Lexer/ms-extensions.c index 8b7d2e1efc..9cd868e8f3 100644 --- a/test/Lexer/ms-extensions.c +++ b/test/Lexer/ms-extensions.c @@ -4,6 +4,7 @@ __int8 x1 = 3i8; __int16 x2 = 4i16; __int32 x3 = 5i32; __int64 x5 = 0x42i64; +__int64 x6 = 0x42I64; __int64 x4 = 70000000i128; __int64 y = 0x42i64u; // expected-error {{invalid suffix}}