[clang-tools-extra] [clang-tidy] bugprone-assert-side-effect non-const operator methods (PR #71974)

Piotr Zegar via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 10 11:15:08 PST 2023


================
@@ -41,6 +41,10 @@ AST_MATCHER_P2(Expr, hasSideEffect, bool, CheckFunctionCalls,
   }
 
   if (const auto *OpCallExpr = dyn_cast<CXXOperatorCallExpr>(E)) {
+    if (const auto *FuncDecl = OpCallExpr->getDirectCallee())
+      if (const auto *MethodDecl = dyn_cast<CXXMethodDecl>(FuncDecl))
+        return !MethodDecl->isConst();
----------------
PiotrZSL wrote:

should it be `if (MethodDecl->isConst()) return false`; otherwise code in line 49 could be a dead code.

https://github.com/llvm/llvm-project/pull/71974


More information about the cfe-commits mailing list