|
clang 22.0.0git
|
#include "clang/Analysis/ProgramPoint.h"#include "clang/Basic/LLVM.h"#include "clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h"#include "clang/StaticAnalyzer/Core/PathSensitive/SVals.h"#include "llvm/ADT/FoldingSet.h"#include "llvm/ADT/IntrusiveRefCntPtr.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/StringRef.h"#include <list>#include <memory>#include <optional>#include <utility>Go to the source code of this file.
Classes | |
| class | clang::ento::BugReporterVisitor |
| BugReporterVisitors are used to add custom diagnostics along a path. More... | |
| struct | clang::ento::bugreporter::TrackingOptions |
| Defines a set of options altering tracking behavior. More... | |
| struct | clang::ento::bugreporter::StoreInfo |
| Describes an event when the value got stored into a memory region. More... | |
| class | clang::ento::bugreporter::Tracker |
| A generalized component for tracking expressions, values, and stores. More... | |
| struct | clang::ento::bugreporter::Tracker::Result |
| Describes a tracking result with the most basic information of what was actually done (or not done). More... | |
| class | clang::ento::bugreporter::ExpressionHandler |
| Handles expressions during the tracking. More... | |
| class | clang::ento::bugreporter::StoreHandler |
| Handles stores during the tracking. More... | |
| class | clang::ento::bugreporter::TrackingBugReporterVisitor |
| Visitor that tracks expressions and values. More... | |
| class | clang::ento::TrackConstraintBRVisitor |
| class | clang::ento::NilReceiverBRVisitor |
| Prints path notes when a message is sent to a nil receiver. More... | |
| class | clang::ento::ConditionBRVisitor |
| Visitor that tries to report interesting diagnostics from conditions. More... | |
| class | clang::ento::LikelyFalsePositiveSuppressionBRVisitor |
| Suppress reports that might lead to known false positives. More... | |
| class | clang::ento::UndefOrNullArgVisitor |
| When a region containing undefined value or '0' value is passed as an argument in a call, marks the call as interesting. More... | |
| class | clang::ento::SuppressInlineDefensiveChecksVisitor |
| class | clang::ento::TagVisitor |
| The visitor detects NoteTags and displays the event notes they contain. More... | |
| class | clang::ento::NoStateChangeFuncVisitor |
| Put a diagnostic on return statement (or on } in its absence) of all inlined functions for which some property remained unchanged. More... | |
| class | clang::ento::NoStoreFuncVisitor |
Put a diagnostic on return statement of all inlined functions for which the region of interest RegionOfInterest was passed into, but not written inside, and it has caused an undefined read or a null pointer dereference outside. More... | |
Namespaces | |
| namespace | clang |
| The JSON file list parser is used to communicate input to InstallAPI. | |
| namespace | clang::ento |
| namespace | clang::ento::bugreporter |
Typedefs | |
| using | clang::ento::bugreporter::TrackerRef = llvm::IntrusiveRefCntPtr<Tracker> |
Enumerations | |
| enum class | clang::ento::bugreporter::TrackingKind { clang::ento::bugreporter::Thorough , clang::ento::bugreporter::Condition } |
| Specifies the type of tracking for an expression. More... | |
Functions | |
| bool | clang::ento::bugreporter::trackExpressionValue (const ExplodedNode *N, const Expr *E, PathSensitiveBugReport &R, TrackingOptions Opts={}) |
| Attempts to add visitors to track expression value back to its point of origin. | |
| void | clang::ento::bugreporter::trackStoredValue (SVal V, const MemRegion *R, PathSensitiveBugReport &Report, TrackingOptions Opts={}, const StackFrameContext *Origin=nullptr) |
| Track how the value got stored into the given region and where it came from. | |
| const Expr * | clang::ento::bugreporter::getDerefExpr (const Stmt *S) |
| Given that expression S represents a pointer that would be dereferenced, try to find a sub-expression from which the pointer came from. | |