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!");
   }