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

Stephan Bergmann sbergman at redhat.com
Fri May 19 21:28:39 UTC 2017


 compilerplugins/clang/stringcopy.cxx |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 96e5f6670b20650a33d873689dbeceea140154e6
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Fri May 19 23:22:06 2017 +0200

    Disable loplugin:stringcopy for now
    
    Some versions of Clang apparently have an issue with
    CastExpr::getSubExprAsWritten, causing false postivies as in
    957874168491f4b030fda85c65dd969aae82a670 "loplugin:stringcopy", where
    getSubExprAsWritten in
    
    > CXXFunctionalCastExpr 0x114a333a8 'class rtl::OUString' functional cast to class rtl::OUString <ConstructorConversion>
    > `-CXXBindTemporaryExpr 0x114a33388 'class rtl::OUString' (CXXTemporary 0x114a33380)
    >   `-CXXConstructExpr 0x114a33348 'class rtl::OUString' 'void (class rtl::OUString &&)' elidable
    >     `-MaterializeTemporaryExpr 0x114a33330 'class rtl::OUString' xvalue
    >       `-CXXBindTemporaryExpr 0x114a33310 'class rtl::OUString' (CXXTemporary 0x114a33308)
    >         `-ImplicitCastExpr 0x114a332f0 'class rtl::OUString' <UserDefinedConversion>
    >           `-CXXMemberCallExpr 0x114a332c8 'class rtl::OUString'
    >             `-MemberExpr 0x114a33290 '<bound member function type>' .operator OUString 0x1149b3b60
    >               `-DeclRefExpr 0x114a324b8 'class jfw::CXmlCharPtr' lvalue Var 0x114a31ce0 'sUser' 'class jfw::CXmlCharPtr'
    
    erroneously returns the MaterializeTemporaryExpr instead of looking through all
    the way down to the DeclRefExpr.  Will need further investigation.
    
    Change-Id: I579cd6047b8bbf8833123ce5ad47ae7e3a33eb12

diff --git a/compilerplugins/clang/stringcopy.cxx b/compilerplugins/clang/stringcopy.cxx
index 64783f5a67d9..c572b965bb9a 100644
--- a/compilerplugins/clang/stringcopy.cxx
+++ b/compilerplugins/clang/stringcopy.cxx
@@ -46,7 +46,7 @@ private:
     }
 };
 
-static loplugin::Plugin::Registration<Visitor> reg("stringcopy");
+static loplugin::Plugin::Registration<Visitor> reg("stringcopy", false);
 
 }
 


More information about the Libreoffice-commits mailing list