Fix small bug. The evaluator now works well enough to pass all tests
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53238 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/ExprConstant.cpp b/lib/AST/ExprConstant.cpp
index 860ff1c..db2fc45 100644
--- a/lib/AST/ExprConstant.cpp
+++ b/lib/AST/ExprConstant.cpp
@@ -339,7 +339,8 @@
if (LV.getLValueBase())
return APValue();
- Result = llvm::APSInt(DestWidth, LV.getLValueOffset());
+ Result.extOrTrunc(DestWidth);
+ Result = LV.getLValueOffset();
} else {
assert(0 && "Unhandled cast!");
}