Lines Matching refs:scope
97 PoolScope &scope = *scpI; in ~AutoreleasePoolRewriter() local
98 clearRefsIn(*scope.Begin, info.Refs); in ~AutoreleasePoolRewriter()
99 clearRefsIn(*scope.End, info.Refs); in ~AutoreleasePoolRewriter()
100 clearRefsIn(scope.Releases.begin(), scope.Releases.end(), info.Refs); in ~AutoreleasePoolRewriter()
121 PoolScope &scope = *scpI; in ~AutoreleasePoolRewriter() local
122 clearUnavailableDiags(*scope.Begin); in ~AutoreleasePoolRewriter()
123 clearUnavailableDiags(*scope.End); in ~AutoreleasePoolRewriter()
124 if (scope.IsFollowedBySimpleReturnStmt) { in ~AutoreleasePoolRewriter()
126 Pass.TA.replaceStmt(*scope.Begin, "@autoreleasepool {"); in ~AutoreleasePoolRewriter()
127 Pass.TA.removeStmt(*scope.End); in ~AutoreleasePoolRewriter()
128 Stmt::child_iterator retI = scope.End; in ~AutoreleasePoolRewriter()
137 SourceRange(scope.getIndentedRange().getBegin(), in ~AutoreleasePoolRewriter()
139 scope.CompoundParent->getBeginLoc()); in ~AutoreleasePoolRewriter()
141 Pass.TA.replaceStmt(*scope.Begin, "@autoreleasepool {"); in ~AutoreleasePoolRewriter()
142 Pass.TA.replaceStmt(*scope.End, "}"); in ~AutoreleasePoolRewriter()
143 Pass.TA.increaseIndentation(scope.getIndentedRange(), in ~AutoreleasePoolRewriter()
144 scope.CompoundParent->getBeginLoc()); in ~AutoreleasePoolRewriter()
152 PoolScope &scope = *scpI; in ~AutoreleasePoolRewriter() local
154 relI = scope.Releases.begin(), in ~AutoreleasePoolRewriter()
155 relE = scope.Releases.end(); relI != relE; ++relI) { in ~AutoreleasePoolRewriter()
207 PoolScope &scope = Scopes.back(); in VisitCompoundStmt() local
208 scope.End = I; in VisitCompoundStmt()
209 handlePoolScope(scope, S); in VisitCompoundStmt()
254 NameReferenceChecker(ASTContext &ctx, PoolScope &scope, in NameReferenceChecker() argument
259 ScopeRange = SourceRange((*scope.Begin)->getBeginLoc(), in NameReferenceChecker()
260 (*scope.End)->getBeginLoc()); in NameReferenceChecker()
296 void handlePoolScope(PoolScope &scope, CompoundStmt *compoundS) { in handlePoolScope() argument
302 Stmt::child_iterator SI = scope.End, SE = compoundS->body_end(); in handlePoolScope()
311 scope.IsFollowedBySimpleReturnStmt = true; in handlePoolScope()
316 nameUsedOutsideScope = !NameReferenceChecker(Pass.Ctx, scope, in handlePoolScope()
331 (*scope.Begin)->getBeginLoc()); in handlePoolScope()
333 (*scope.End)->getBeginLoc()); in handlePoolScope()
340 ReleaseCollector releaseColl(scope.PoolVar, scope.Releases); in handlePoolScope()
341 Stmt::child_iterator I = scope.Begin; in handlePoolScope()
343 for (; I != scope.End; ++I) in handlePoolScope()
347 PoolVars[scope.PoolVar].Scopes.push_back(scope); in handlePoolScope()