[all-commits] [llvm/llvm-project] 87dd5d: [clang][dataflow] Add a lattice to help cache cons...

Jan Voung via All-commits all-commits at lists.llvm.org
Wed Oct 16 09:11:00 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 87dd5dc8f03e78a34d99630b80024c102e5aee10
      https://github.com/llvm/llvm-project/commit/87dd5dc8f03e78a34d99630b80024c102e5aee10
  Author: Jan Voung <jvoung at google.com>
  Date:   2024-10-16 (Wed, 16 Oct 2024)

  Changed paths:
    A clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
    M clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
    A clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Add a lattice to help cache const accessor methods (#111006)

By caching const accessor methods we can sometimes treat method call
results as stable (e.g., for issue
https://github.com/llvm/llvm-project/issues/58510). Users can clear the
cache when a non-const method is called that may modify the state of an
object.
This is represented as mixin.

It will be used in a follow on patch to change
bugprone-unchecked-optional-access's lattice from NoopLattice to
CachedConstAccessorsLattice<NoopLattice>, along with some additional
transfer functions.



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