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

Stephan Bergmann sbergman at redhat.com
Thu Aug 31 09:27:55 UTC 2017


 compilerplugins/clang/constparams.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 4082b5874adddedf8332fe977b6bb47b6949b302
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Aug 31 11:23:26 2017 +0200

    Restrict loplugin:constparams cast-to-void check
    
    Change-Id: I3c4d4f99b423f46136a79f3b06c5f0e1492872f1

diff --git a/compilerplugins/clang/constparams.cxx b/compilerplugins/clang/constparams.cxx
index 0aec1e3d82c2..9c2263c87453 100644
--- a/compilerplugins/clang/constparams.cxx
+++ b/compilerplugins/clang/constparams.cxx
@@ -425,7 +425,13 @@ bool ConstParams::checkIfCanBeConst(const Stmt* stmt, const ParmVarDecl* parmVar
                 return false;
             }
             if (loplugin::TypeCheck(t).Void()) {
-                return false;
+                if (auto const sub = dyn_cast<DeclRefExpr>(
+                        e->getSubExpr()->IgnoreParenImpCasts()))
+                {
+                    if (sub->getDecl() == parmVarDecl) {
+                        return false;
+                    }
+                }
             }
         }
         return checkIfCanBeConst(parent, parmVarDecl);


More information about the Libreoffice-commits mailing list