diff options
Diffstat (limited to 'lib/CodeGen')
-rw-r--r-- | lib/CodeGen/CGExprCXX.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/CodeGen/CGExprCXX.cpp b/lib/CodeGen/CGExprCXX.cpp index 5e417605b1..e0c8280e6b 100644 --- a/lib/CodeGen/CGExprCXX.cpp +++ b/lib/CodeGen/CGExprCXX.cpp @@ -1018,8 +1018,9 @@ void CodeGenFunction::EmitCXXDeleteExpr(const CXXDeleteExpr *E) { Ptr = Builder.CreateInBoundsGEP(Ptr, GEP.begin(), GEP.end(), "del.first"); } - assert(ConvertType(DeleteTy) == - cast<llvm::PointerType>(Ptr->getType())->getElementType()); + assert(DeleteTy->isBooleanType() || + (ConvertType(DeleteTy) == + cast<llvm::PointerType>(Ptr->getType())->getElementType())); if (E->isArrayForm()) { EmitArrayDelete(*this, E->getOperatorDelete(), Ptr, DeleteTy); |