clang 22.0.0git
|
Namespaces | |
namespace | utils |
Classes | |
struct | AccessPath |
Represents the storage location being borrowed, e.g., a specific stack variable. More... | |
class | AssignOriginFact |
class | DataflowAnalysis |
A generic, policy-based driver for dataflow analyses. More... | |
struct | ExpiredLattice |
The dataflow lattice for tracking the set of expired loans. More... | |
class | ExpiredLoansAnalysis |
The analysis that tracks which loans have expired. More... | |
class | ExpireFact |
class | Fact |
An abstract base class for a single, atomic lifetime-relevant event. More... | |
class | FactGenerator |
class | FactManager |
struct | ID |
A generic, type-safe wrapper for an ID, distinguished by its Tag type. More... | |
class | IssueFact |
class | LifetimeChecker |
struct | LifetimeFactory |
An object to hold the factories for immutable collections, ensuring that all created states share the same underlying memory management. More... | |
class | LifetimeSafetyAnalysis |
Running the lifetime safety analysis and querying its results. More... | |
struct | Loan |
Information about a single borrow, or "Loan". More... | |
class | LoanManager |
Manages the creation, storage and retrieval of loans. More... | |
class | LoanPropagationAnalysis |
The analysis that tracks which loans belong to which origins. More... | |
struct | LoanPropagationLattice |
Represents the dataflow lattice for loan propagation. More... | |
struct | Origin |
An Origin is a symbolic identifier that represents the set of possible loans a pointer-like object could hold at any given time. More... | |
class | OriginManager |
Manages the creation, storage, and retrieval of origins for pointer-like variables and expressions. More... | |
struct | PendingWarning |
Struct to store the complete context for a potential lifetime violation. More... | |
class | ReturnOfOriginFact |
class | TestPointFact |
A dummy-fact used to mark a specific point in the code for testing. More... | |
class | UseFact |
Typedefs | |
using | LoanID = ID< struct LoanTag > |
using | OriginID = ID< struct OriginTag > |
using | LoanSet = llvm::ImmutableSet< LoanID > |
using | OriginSet = llvm::ImmutableSet< OriginID > |
using | ProgramPoint = const Fact * |
A ProgramPoint identifies a location in the CFG by pointing to a specific Fact . | |
using | OriginLoanMap = llvm::ImmutableMap< OriginID, LoanSet > |
using | ExpiredLoanMap = llvm::ImmutableMap< LoanID, const ExpireFact * > |
Enumerations | |
enum class | Direction { Forward , Backward } |
Functions | |
template<typename Tag > | |
llvm::raw_ostream & | operator<< (llvm::raw_ostream &OS, ID< Tag > ID) |
using clang::lifetimes::internal::ExpiredLoanMap = typedef llvm::ImmutableMap<LoanID, const ExpireFact *> |
Definition at line 795 of file LifetimeSafety.cpp.
using clang::lifetimes::internal::LoanID = typedef ID<struct LoanTag> |
Definition at line 83 of file LifetimeSafety.h.
using clang::lifetimes::internal::LoanSet = typedef llvm::ImmutableSet<LoanID> |
Definition at line 89 of file LifetimeSafety.h.
using clang::lifetimes::internal::OriginID = typedef ID<struct OriginTag> |
Definition at line 84 of file LifetimeSafety.h.
using clang::lifetimes::internal::OriginLoanMap = typedef llvm::ImmutableMap<OriginID, LoanSet> |
Definition at line 794 of file LifetimeSafety.cpp.
using clang::lifetimes::internal::OriginSet = typedef llvm::ImmutableSet<OriginID> |
Definition at line 90 of file LifetimeSafety.h.
typedef const Fact * clang::lifetimes::internal::ProgramPoint |
A ProgramPoint
identifies a location in the CFG by pointing to a specific Fact
.
identified by a lifetime-related event (Fact
).
A ProgramPoint
has "after" semantics: it represents the location immediately after its corresponding Fact
.
Definition at line 97 of file LifetimeSafety.h.
|
strong |
Enumerator | |
---|---|
Forward | |
Backward |
Definition at line 580 of file LifetimeSafety.cpp.
|
inline |
Definition at line 79 of file LifetimeSafety.h.
References clang::lifetimes::internal::ID< Tag >::Value.