clang-tools 20.0.0git
Namespaces | Enumerations | Functions
UseAfterMoveCheck.cpp File Reference
#include "UseAfterMoveCheck.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprCXX.h"
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/Analysis/Analyses/CFGReachabilityAnalysis.h"
#include "clang/Analysis/CFG.h"
#include "clang/Lex/Lexer.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "../utils/ExprSequence.h"
#include "../utils/Matchers.h"
#include <optional>

Go to the source code of this file.

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
 
namespace  clang::tidy
 
namespace  clang::tidy::bugprone
 

Enumerations

enum class  clang::tidy::bugprone::MoveType { clang::tidy::bugprone::Move , clang::tidy::bugprone::Forward }
 

Functions

static StatementMatcher clang::tidy::bugprone::inDecltypeOrTemplateArg ()
 
bool clang::tidy::bugprone::isStandardSmartPointer (const ValueDecl *VD)
 
static MoveType clang::tidy::bugprone::determineMoveType (const FunctionDecl *FuncDecl)
 
static void clang::tidy::bugprone::emitDiagnostic (const Expr *MovingCall, const DeclRefExpr *MoveArg, const UseAfterMove &Use, ClangTidyCheck *Check, ASTContext *Context, MoveType Type)
 

Variable Documentation

◆ DeclRef

const DeclRefExpr* DeclRef

◆ EvaluationOrderUndefined

bool EvaluationOrderUndefined = false

Definition at line 39 of file UseAfterMoveCheck.cpp.

◆ UseHappensInLaterLoopIteration

bool UseHappensInLaterLoopIteration = false

Definition at line 44 of file UseAfterMoveCheck.cpp.