summaryrefslogtreecommitdiffstats
path: root/clang/tools
diff options
context:
space:
mode:
Diffstat (limited to 'clang/tools')
-rw-r--r--clang/tools/libclang/CIndex.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp
index ef93489710a..a1e21e650f6 100644
--- a/clang/tools/libclang/CIndex.cpp
+++ b/clang/tools/libclang/CIndex.cpp
@@ -3571,12 +3571,13 @@ static const ExprEvalResult* evaluateExpr(Expr *expr, CXCursor C) {
rettype = callExpr->getCallReturnType(ctx);
if (rettype->isVectorType() || callExpr->getNumArgs() > 1) {
+ clang_EvalResult_dispose((CXEvalResult *)result);
return nullptr;
}
if (rettype->isIntegralType(ctx) || rettype->isRealFloatingType()) {
if(callExpr->getNumArgs() == 1 &&
- !callExpr->getArg(0)->getType()->isIntegralType(ctx)){
-
+ !callExpr->getArg(0)->getType()->isIntegralType(ctx)) {
+ clang_EvalResult_dispose((CXEvalResult *)result);
return nullptr;
}
} else if(rettype.getAsString() == "CFStringRef") {
OpenPOWER on IntegriCloud