29 using namespace clang;
30 using namespace arcmt;
31 using namespace trans;
50 if (declRef && isa<VarDecl>(declRef->
getDecl())) {
58 if (Pass.TA.clearDiagnostic(diag::err_typecheck_arr_assign_enumeration,
60 if (!ModifiedVars.count(var)) {
63 ModifiedVars.insert(var);
76 ARCAssignChecker assignCheck(pass);
Defines the clang::ASTContext interface.
SourceLocation getOperatorLoc() const
VarDecl - An instance of this class is created to represent a variable declaration or definition...
void makeAssignARCSafe(MigrationPass &pass)
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 ...
SourceLocation getBeginLoc() const
Get the begin source location.
A builtin binary operation expression such as "x + y" or "x <= y".
Expr * IgnoreParenCasts() LLVM_READONLY
IgnoreParenCasts - Ignore parentheses and casts.
A class that does preordor or postorder depth-first traversal on the entire Clang AST and visits each...
Expr - This represents one expression.
TranslationUnitDecl * getTranslationUnitDecl() 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...
bool isDependentType() const
Whether this type is a dependent type, meaning that its definition somehow depends on a template para...
TypeSourceInfo * getTypeSourceInfo() const
TypeLoc getTypeLoc() const
Return the TypeLoc wrapper for the type source info.
Encodes a location in the source.
SourceLocation getExprLoc() const LLVM_READONLY
getExprLoc - Return the preferred location for the arrow when diagnosing a problem with a generic exp...
detail::InMemoryDirectory::const_iterator E
bool isARCPseudoStrong() const
Determine whether this variable is an ARC pseudo-__strong variable.
A reference to a declared variable, function, enum, etc.