|
clang 23.0.0git
|
#include "clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h"
Additional Inherited Members | |
| Public Attributes inherited from clang::StmtVisitorBase< Ptr, ImplClass, RetTy, ParamTys > | |
| ParamTys | P { return RetTy() |
Definition at line 27 of file FactsGenerator.h.
|
inline |
Definition at line 31 of file FactsGenerator.h.
| void clang::lifetimes::internal::FactsGenerator::run | ( | ) |
Definition at line 95 of file FactsGenerator.cpp.
References clang::Block, clang::CFGElement::getAs(), clang::CFG::getEntry(), clang::CFG::getExit(), clang::Initializer, and clang::StmtVisitorBase< Ptr, ImplClass, RetTy, ParamTys >::Visit().
Referenced by clang::lifetimes::internal::LifetimeSafetyAnalysis::run().
| void clang::lifetimes::internal::FactsGenerator::VisitBinaryOperator | ( | const BinaryOperator * | BO | ) |
Definition at line 372 of file FactsGenerator.cpp.
References clang::BinaryOperator::getLHS(), clang::BinaryOperator::getRHS(), clang::BinaryOperator::isAssignmentOp(), and clang::BinaryOperator::isCompoundAssignmentOp().
| void clang::lifetimes::internal::FactsGenerator::VisitCallExpr | ( | const CallExpr * | CE | ) |
Definition at line 241 of file FactsGenerator.cpp.
References clang::CallExpr::getArg(), clang::CallExpr::getDirectCallee(), clang::CallExpr::getNumArgs(), clang::Expr::IgnoreParenImpCasts(), and clang::lifetimes::internal::isStdMove().
Referenced by VisitCXXOperatorCallExpr().
| void clang::lifetimes::internal::FactsGenerator::VisitConditionalOperator | ( | const ConditionalOperator * | CO | ) |
Definition at line 382 of file FactsGenerator.cpp.
References clang::ConditionalOperator::getFalseExpr(), clang::ConditionalOperator::getTrueExpr(), and clang::lifetimes::internal::hasOrigins().
| void clang::lifetimes::internal::FactsGenerator::VisitCXXBindTemporaryExpr | ( | const CXXBindTemporaryExpr * | BTE | ) |
Definition at line 421 of file FactsGenerator.cpp.
References clang::CXXBindTemporaryExpr::getSubExpr().
| void clang::lifetimes::internal::FactsGenerator::VisitCXXConstructExpr | ( | const CXXConstructExpr * | CCE | ) |
Definition at line 183 of file FactsGenerator.cpp.
References clang::Expr::getType(), and clang::lifetimes::isGslPointerType().
| void clang::lifetimes::internal::FactsGenerator::VisitCXXFunctionalCastExpr | ( | const CXXFunctionalCastExpr * | FCE | ) |
Definition at line 402 of file FactsGenerator.cpp.
References clang::CastExpr::getSubExpr(), clang::Expr::getType(), and clang::lifetimes::isGslPointerType().
| void clang::lifetimes::internal::FactsGenerator::VisitCXXMemberCallExpr | ( | const CXXMemberCallExpr * | MCE | ) |
Definition at line 197 of file FactsGenerator.cpp.
References clang::CallExpr::getArgs(), clang::CallExpr::getCalleeDecl(), clang::CXXMemberCallExpr::getImplicitObjectArgument(), clang::CXXMemberCallExpr::getMethodDecl(), clang::CallExpr::getNumArgs(), clang::Expr::getType(), clang::lifetimes::isGslOwnerType(), clang::lifetimes::isGslPointerType(), and clang::Method.
| void clang::lifetimes::internal::FactsGenerator::VisitCXXNullPtrLiteralExpr | ( | const CXXNullPtrLiteralExpr * | N | ) |
TODO: Handle nullptr expr as a special 'null' loan. Uninitialized pointers can use the same type of loan.
Definition at line 255 of file FactsGenerator.cpp.
| void clang::lifetimes::internal::FactsGenerator::VisitCXXOperatorCallExpr | ( | const CXXOperatorCallExpr * | OCE | ) |
Definition at line 391 of file FactsGenerator.cpp.
References clang::CallExpr::getArg(), clang::CallExpr::getNumArgs(), clang::CXXOperatorCallExpr::getOperator(), clang::Expr::getType(), clang::lifetimes::internal::hasOrigins(), and VisitCallExpr().
| void clang::lifetimes::internal::FactsGenerator::VisitDeclRefExpr | ( | const DeclRefExpr * | DRE | ) |
Definition at line 156 of file FactsGenerator.cpp.
References clang::lifetimes::internal::createLoan(), clang::lifetimes::internal::doesDeclHaveStorage(), clang::DeclRefExpr::getDecl(), clang::DeclRefExpr::getFoundDecl(), clang::lifetimes::internal::Loan::getID(), clang::lifetimes::internal::OriginList::getOuterOriginID(), clang::Decl::isFunctionOrFunctionTemplate(), and clang::Expr::isGLValue().
| void clang::lifetimes::internal::FactsGenerator::VisitDeclStmt | ( | const DeclStmt * | DS | ) |
Definition at line 143 of file FactsGenerator.cpp.
References clang::DeclStmt::decls().
| void clang::lifetimes::internal::FactsGenerator::VisitImplicitCastExpr | ( | const ImplicitCastExpr * | ICE | ) |
Definition at line 262 of file FactsGenerator.cpp.
References clang::CastExpr::getCastKind(), clang::lifetimes::internal::OriginList::getLength(), clang::lifetimes::internal::getRValueOrigins(), clang::CastExpr::getSubExpr(), and clang::Expr::isLValue().
| void clang::lifetimes::internal::FactsGenerator::VisitInitListExpr | ( | const InitListExpr * | ILE | ) |
Definition at line 412 of file FactsGenerator.cpp.
References clang::InitListExpr::getInit(), clang::InitListExpr::getNumInits(), and clang::lifetimes::internal::hasOrigins().
| void clang::lifetimes::internal::FactsGenerator::VisitMaterializeTemporaryExpr | ( | const MaterializeTemporaryExpr * | MTE | ) |
Definition at line 426 of file FactsGenerator.cpp.
References clang::lifetimes::internal::createLoan(), clang::lifetimes::internal::getChildBinding(), clang::lifetimes::internal::Loan::getID(), clang::lifetimes::internal::OriginList::getLength(), clang::lifetimes::internal::OriginList::getOuterOriginID(), clang::lifetimes::internal::getRValueOrigins(), clang::MaterializeTemporaryExpr::getSubExpr(), and clang::Expr::isGLValue().
| void clang::lifetimes::internal::FactsGenerator::VisitMemberExpr | ( | const MemberExpr * | ME | ) |
| void clang::lifetimes::internal::FactsGenerator::VisitReturnStmt | ( | const ReturnStmt * | RS | ) |
Definition at line 330 of file FactsGenerator.cpp.
References clang::ReturnStmt::getRetValue(), and clang::lifetimes::internal::OriginList::peelOuterOrigin().
| void clang::lifetimes::internal::FactsGenerator::VisitUnaryOperator | ( | const UnaryOperator * | UO | ) |
Definition at line 309 of file FactsGenerator.cpp.
References clang::UnaryOperator::getOpcode(), and clang::UnaryOperator::getSubExpr().