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
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
A class that does preorder depth-first traversal on the entire Clang AST and visits each node...
TranslationUnitDecl * getTranslationUnitDecl() const
isModifiableLvalueResult isModifiableLvalue(ASTContext &Ctx, SourceLocation *Loc=nullptr) const
bool isDependentType() const
TypeSourceInfo * getTypeSourceInfo() const
TypeLoc getTypeLoc() const
Return the TypeLoc wrapper for the type source info.
Encodes a location in the source. The SourceManager can decode this to get at the full include stack...
SourceLocation getExprLoc() const LLVM_READONLY
bool isARCPseudoStrong() const
Determine whether this variable is an ARC pseudo-__strong variable. A pseudo-__strong variable has a ...
A reference to a declared variable, function, enum, etc. [C99 6.5.1p2].