summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorYaxun Liu <Yaxun.Liu@amd.com>2017-07-08 19:13:41 +0000
committerYaxun Liu <Yaxun.Liu@amd.com>2017-07-08 19:13:41 +0000
commit7bce64242fda71a8a32088e59625313b7cec89c0 (patch)
treee37252ddc44a92379a2bd1ae865674ebc1554bad /clang/lib/CodeGen/CodeGenModule.cpp
parentc113b96ec4bb4fceff6dfc4a2bcd1532cf7b39ff (diff)
downloadbcm5719-llvm-7bce64242fda71a8a32088e59625313b7cec89c0.tar.gz
bcm5719-llvm-7bce64242fda71a8a32088e59625313b7cec89c0.zip
Fix build failure with gcc about mixing enum and non-enum
llvm-svn: 307483
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
-rw-r--r--clang/lib/CodeGen/CodeGenModule.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp
index 3a30ddc6675..4b15b8ac4c7 100644
--- a/clang/lib/CodeGen/CodeGenModule.cpp
+++ b/clang/lib/CodeGen/CodeGenModule.cpp
@@ -2432,7 +2432,8 @@ CodeGenModule::GetOrCreateLLVMGlobal(StringRef MangledName,
auto ExpectedAS =
D ? D->getType().getAddressSpace()
- : (LangOpts.OpenCL ? LangAS::opencl_global : LangAS::Default);
+ : static_cast<unsigned>(LangOpts.OpenCL ? LangAS::opencl_global
+ : LangAS::Default);
assert(getContext().getTargetAddressSpace(ExpectedAS) ==
Ty->getPointerAddressSpace());
if (AddrSpace != ExpectedAS)
@@ -2574,7 +2575,8 @@ CharUnits CodeGenModule::GetTargetTypeStoreSize(llvm::Type *Ty) const {
unsigned CodeGenModule::GetGlobalVarAddressSpace(const VarDecl *D) {
unsigned AddrSpace;
if (LangOpts.OpenCL) {
- AddrSpace = D ? D->getType().getAddressSpace() : LangAS::opencl_global;
+ AddrSpace = D ? D->getType().getAddressSpace()
+ : static_cast<unsigned>(LangAS::opencl_global);
assert(AddrSpace == LangAS::opencl_global ||
AddrSpace == LangAS::opencl_constant ||
AddrSpace == LangAS::opencl_local ||
OpenPOWER on IntegriCloud