clang 20.0.0git
Macros | Enumerations | Functions
UninitializedValues.cpp File Reference
#include "clang/Analysis/Analyses/UninitializedValues.h"
#include "clang/AST/Attr.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclBase.h"
#include "clang/AST/Expr.h"
#include "clang/AST/OperationKinds.h"
#include "clang/AST/Stmt.h"
#include "clang/AST/StmtObjC.h"
#include "clang/AST/StmtVisitor.h"
#include "clang/AST/Type.h"
#include "clang/Analysis/Analyses/PostOrderCFGView.h"
#include "clang/Analysis/AnalysisDeclContext.h"
#include "clang/Analysis/CFG.h"
#include "clang/Analysis/DomainSpecific/ObjCNoReturn.h"
#include "clang/Analysis/FlowSensitive/DataflowWorklist.h"
#include "clang/Basic/LLVM.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/PackedVector.h"
#include "llvm/ADT/SmallBitVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Casting.h"
#include <algorithm>
#include <cassert>
#include <optional>

Go to the source code of this file.

Macros

#define DEBUG_LOGGING   0
 

Enumerations

enum  Value { Unknown = 0x0 , Initialized = 0x1 , Uninitialized = 0x2 , MayUninitialized = 0x3 }
 

Functions

static bool recordIsNotEmpty (const RecordDecl *RD)
 
static bool isTrackedVar (const VarDecl *vd, const DeclContext *dc)
 
static bool isUninitialized (const Value v)
 
static bool isAlwaysUninit (const Value v)
 
static const ExprstripCasts (ASTContext &C, const Expr *Ex)
 
static FindVarResult findVar (const Expr *E, const DeclContext *DC)
 If E is an expression comprising a reference to a single variable, find that variable.
 
static const DeclRefExprgetSelfInitExpr (VarDecl *VD)
 
static bool isPointerToConst (const QualType &QT)
 
static bool hasTrivialBody (CallExpr *CE)
 
static bool runOnBlock (const CFGBlock *block, const CFG &cfg,