[PATCH] D51866: [analyzer][UninitializedObjectChecker] New flag to ignore guarded uninitialized fields

Umann Kristóf via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 31 10:53:34 PDT 2018


Szelethus added inline comments.


================
Comment at: lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp:502
+
+  auto AssertM = callExpr(callee(functionDecl(hasName("assert"))));
+  auto GuardM =
----------------
Szelethus wrote:
> NoQ wrote:
> > In a lot of standard libraries `assert()` is implemented as a macro. You might want to catch the corresponding builtin or look at macro names (not sure if we have a matcher for the latter but it should be easy to add).
> Hmm, maybe go for `[[noreturn]]` functions?
Unfortunately, macros are not a part of the AST, so I'm struggling a lot with this patch, but I'm making progress.


https://reviews.llvm.org/D51866





More information about the cfe-commits mailing list