summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExpr.cpp
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2016-10-04 15:57:49 +0000
committerReid Kleckner <rnk@google.com>2016-10-04 15:57:49 +0000
commitd2c0c25be4609f5e49f5a2976f0f887a75abfc62 (patch)
tree20b797d9c6cae6454f481471adfbd75ada1c7e83 /clang/lib/Sema/SemaExpr.cpp
parente2525381077175a135b748b2c16889e063a749ca (diff)
downloadbcm5719-llvm-d2c0c25be4609f5e49f5a2976f0f887a75abfc62.tar.gz
bcm5719-llvm-d2c0c25be4609f5e49f5a2976f0f887a75abfc62.zip
[MS] Move hex long long sign compat hack to -fms-compatibility
Treating large 0x*LL literals as signed instead of unsigned is not a conforming language extension, so move it out of -fms-extensions. Came up in PR30605 llvm-svn: 283227
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
-rw-r--r--clang/lib/Sema/SemaExpr.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp
index 76d88c1d261..bf2ee03a0d5 100644
--- a/clang/lib/Sema/SemaExpr.cpp
+++ b/clang/lib/Sema/SemaExpr.cpp
@@ -3518,7 +3518,7 @@ ExprResult Sema::ActOnNumericConstant(const Token &Tok, Scope *UDLScope) {
// To be compatible with MSVC, hex integer literals ending with the
// LL or i64 suffix are always signed in Microsoft mode.
if (!Literal.isUnsigned && (ResultVal[LongLongSize-1] == 0 ||
- (getLangOpts().MicrosoftExt && Literal.isLongLong)))
+ (getLangOpts().MSVCCompat && Literal.isLongLong)))
Ty = Context.LongLongTy;
else if (AllowUnsigned)
Ty = Context.UnsignedLongLongTy;
OpenPOWER on IntegriCloud