[all-commits] [llvm/llvm-project] f68c0a: [analyzer] Add path note tags to standard library ...

NoQ via All-commits all-commits at lists.llvm.org
Thu Apr 28 17:33:56 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f68c0a2f58e484f008883ab290e36a36e851c1bf
      https://github.com/llvm/llvm-project/commit/f68c0a2f58e484f008883ab290e36a36e851c1bf
  Author: Artem Dergachev <artem.dergachev at gmail.com>
  Date:   2022-04-28 (Thu, 28 Apr 2022)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/test/Analysis/std-c-library-functions-arg-constraints.c
    A clang/test/Analysis/std-c-library-functions-path-notes.c

  Log Message:
  -----------
  [analyzer] Add path note tags to standard library function summaries.

The patch is straightforward except the tiny fix in BugReporterVisitors.cpp
that suppresses a default note for "Assuming pointer value is null" when
a note tag from the checker is present. This is probably the right thing to do
but also definitely not a complete solution to the problem of different sources
of path notes being unaware of each other, which is a large and annoying issue
that we have to deal with. Note tags really help there because they're nicely
introspectable. The problem is demonstrated by the newly added getenv() test.

Differential Revision: https://reviews.llvm.org/D122285




More information about the All-commits mailing list