Make MemberExpr code safe w.r.t. address spaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45394 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CGExpr.cpp b/CodeGen/CGExpr.cpp
index c20680b..4cb897f 100644
--- a/CodeGen/CGExpr.cpp
+++ b/CodeGen/CGExpr.cpp
@@ -424,9 +424,9 @@
const llvm::PointerType * BaseTy =
cast<llvm::PointerType>(BaseValue->getType());
if (FieldTy != BaseTy->getElementType()) {
- // FIXME: Need to get address space qualification of pointer
+ unsigned AS = BaseTy->getAddressSpace();
V = Builder.CreateBitCast(V,
- llvm::PointerType::getUnqual(FieldTy),
+ llvm::PointerType::get(FieldTy, AS),
"tmp");
}
}