martong added inline comments.
================ Comment at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h:198 /// SymbolMetadata - Represents path-dependent metadata about a specific region. /// Metadata symbols remain live as long as they are marked as in use before /// dead-symbol sweeping AND their associated regions are still alive. ---------------- I think the comments should be updated as well: remove "in use" and refer to the aliveness of the memregion. ================ Comment at: clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp:2417 void CStringChecker::checkDeadSymbols(SymbolReaper &SR, CheckerContext &C) const { ---------------- Seems like `checkDeadSymbols` could have a generic implementation. Perhaps in the following form: ``` class CStringChecker : public Checker< check::DeadSymbols<CStringLength> ``` But this should be done in a separate patch. Maybe it would make sense to have a generic default check::LiveSymbols<GDM0, GDM1, ...> implementation as well. In that implementation we could iterate over the GDM entries and could mark the dependent (sub)symbols live. (Note, this is a reminder from our verbal discussion with @steakhal.) ================ Comment at: clang/test/Analysis/string.c:1544 + void memset7_char_array_nonnull() { char str[5] = "abcd"; ---------------- It would make sense to split this into two. Only one of them should be in the `FIXMEs` section with the {{UNKNOWN}}. TRUE expectations could be moved out from the FIXMEs section. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D86445/new/ https://reviews.llvm.org/D86445 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits