diff --git a/lib/AST/ExprConstant.cpp b/lib/AST/ExprConstant.cpp
index cfe1a74..5e08e52 100644
--- a/lib/AST/ExprConstant.cpp
+++ b/lib/AST/ExprConstant.cpp
@@ -1057,7 +1057,7 @@
     if (!Result.isInt())
       return false;
 
-    return Success(HandleIntToIntCast(DestType, SrcType, 
+    return Success(HandleIntToIntCast(DestType, SrcType,
                                       Result.getInt(), Info.Ctx), E);
   }
   
@@ -1067,10 +1067,17 @@
     if (!EvaluatePointer(SubExpr, LV, Info))
       return false;
 
-    if (LV.getLValueBase())
-      return false;
+    if (LV.getLValueBase()) {
+      // Only allow based lvalue casts if they are lossless.
+      if (Info.Ctx.getTypeSize(DestType) != Info.Ctx.getTypeSize(SrcType))
+        return false;
 
-    return Success(LV.getLValueOffset(), E);
+      Result = LV;
+      return true;
+    }
+
+    APSInt AsInt = Info.Ctx.MakeIntValue(LV.getLValueOffset(), SrcType);
+    return Success(HandleIntToIntCast(DestType, SrcType, AsInt, Info.Ctx), E);
   }
 
   if (!SrcType->isRealFloatingType())
