[all-commits] [llvm/llvm-project] deede2: [analyzer] Eliminate unique release point assertio...

Donát Nagy via All-commits all-commits at lists.llvm.org
Thu Jul 24 07:18:58 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: deede2b2db262a932f07a386e59c2ca0b1a798d1
      https://github.com/llvm/llvm-project/commit/deede2b2db262a932f07a386e59c2ca0b1a798d1
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-07-24 (Thu, 24 Jul 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/test/Analysis/malloc.c

  Log Message:
  -----------
  [analyzer] Eliminate unique release point assertion (#150240)

MallocChecker.cpp has a complex heuristic that supresses reports where
the memory release happens during the release of a reference-counted
object (to suppress a significant amount of false positives).

Previously this logic asserted that there is at most one release point
corresponding to a symbol, but it turns out that there is a rare corner
case where the symbol can be released, forgotten and then released
again. This commit removes that assertion to avoid the crash. (As this
issue just affects a bug suppression heuristic, I didn't want to dig
deeper and modify the way the state of the symbol is changed.)

Fixes #149754



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list