zinovy.nis marked 4 inline comments as done.
zinovy.nis added inline comments.


================
Comment at: 
clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp:57-60
     if (const auto *FuncDecl = CExpr->getDirectCallee()) {
       if (FuncDecl->getDeclName().isIdentifier() &&
-          FuncDecl->getName() == "__builtin_expect") // exceptions come here
+          IgnoredFunctions.contains(
+              FuncDecl->getName())) // exceptions come here
----------------
aaron.ballman wrote:
> This doesn't seem quite right to me (test coverage would help) in the case 
> where the user is specifying a (potentially partially) qualified function 
> name. e.g., imagine an `IgnoredFunctions` list of 
> `my::fancy_func,::other_func,yet::another_func` where `my` is a namespace 
> containing a function named `fancy_func`, and `yet` is a class with a static 
> function named `another_func`. I think this code will only consider the name 
> of the function itself, but not any part of its qualified name.
> 
> I think we typically implement function name exclusions via the 
> `matchesAnyListedName()` AST matcher, as in: 
> https://github.com/llvm/llvm-project/blob/main/clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp#L92
Thanks a lot!
Done.

BTW, now we have "," separator for macros and ";" for ignored functions. 
Doesn't sound reasonable. What do you think?


================
Comment at: 
clang-tools-extra/test/clang-tidy/checkers/bugprone-assert-side-effect.cpp:91
   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: side effect in assert() 
condition discarded in release builds
+  assert(mc.badButIgnoredFunc(0, 1));
   assert(mc.goodFunc(0, 1));
----------------
aaron.ballman wrote:
> FWIW, I think this can be confusing in practice; the function called is 
> `::MyClass:badButIgnoredFunc()`. Further, if I had a global function named 
> `badButIgnoredFunc()` it would *also* be ignored and I'd have no way to 
> configure to distinguish between the two.
Added a new test case for it.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D116478/new/

https://reviews.llvm.org/D116478

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to