28 using namespace clang;
29 using namespace arcmt;
30 using namespace trans;
49 if (declRef && isa<VarDecl>(declRef->
getDecl())) {
59 if (!ModifiedVars.count(var)) {
62 ModifiedVars.insert(var);
75 ARCAssignChecker assignCheck(pass);
Defines the clang::ASTContext interface.
Represents a variable declaration or definition.
void makeAssignARCSafe(MigrationPass &pass)
bool isARCPseudoStrong() const
Determine whether this variable is an ARC pseudo-__strong variable.
Base wrapper for a particular "section" of type source info.
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
A builtin binary operation expression such as "x + y" or "x <= y".
Expr * IgnoreParenCasts() LLVM_READONLY
Skip past any parentheses and casts which might surround this expression until reaching a fixed point...
A class that does preorder or postorder depth-first traversal on the entire Clang AST and visits each...
SourceLocation getBeginLoc() const
Get the begin source location.
This represents one expression.
Encodes a location in the source.
SourceLocation getOperatorLoc() const
isModifiableLvalueResult isModifiableLvalue(ASTContext &Ctx, SourceLocation *Loc=nullptr) const
isModifiableLvalue - C99 6.3.2.1: an lvalue that does not have array type, does not have an incomplet...
SourceLocation getExprLoc() const LLVM_READONLY
getExprLoc - Return the preferred location for the arrow when diagnosing a problem with a generic exp...
Dataflow Directional Tag Classes.
TypeSourceInfo * getTypeSourceInfo() const
TypeLoc getTypeLoc() const
Return the TypeLoc wrapper for the type source info.
TranslationUnitDecl * getTranslationUnitDecl() const
bool isDependentType() const
Whether this type is a dependent type, meaning that its definition somehow depends on a template para...
A reference to a declared variable, function, enum, etc.