[Libreoffice-commits] core.git: compilerplugins/clang

Stephan Bergmann sbergman at redhat.com
Thu Apr 23 14:48:50 PDT 2015


 compilerplugins/clang/implicitboolconversion.cxx |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

New commits:
commit 6052a839f5f236d0885f33d4a751052e1b7ee23f
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Apr 23 23:48:01 2015 +0200

    Mac OS X ctype.h isdigit is not extern "C"
    
    Change-Id: Ied43178bacc020b848ee3196080713e08c780133

diff --git a/compilerplugins/clang/implicitboolconversion.cxx b/compilerplugins/clang/implicitboolconversion.cxx
index 41ece58..dec8e23 100644
--- a/compilerplugins/clang/implicitboolconversion.cxx
+++ b/compilerplugins/clang/implicitboolconversion.cxx
@@ -828,7 +828,11 @@ bool ImplicitBoolConversion::isExternCFunctionCall(
     Decl const * d = expr->getCalleeDecl();
     if (d != nullptr) {
         FunctionDecl const * fd = dyn_cast<FunctionDecl>(d);
-        if (fd != nullptr && fd->isExternC()) {
+        if (fd != nullptr
+            && (fd->isExternC()
+                || compiler.getSourceManager().isInExternCSystemHeader(
+                    fd->getLocation())))
+        {
             PointerType const * pt = fd->getType()->getAs<PointerType>();
             QualType t2(pt == nullptr ? fd->getType() : pt->getPointeeType());
             *functionType = t2->getAs<FunctionProtoType>();


More information about the Libreoffice-commits mailing list