diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2013-07-16 15:33:19 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2013-07-16 15:33:19 +0000 |
commit | 0080fb5a1869ffdaa165895bb695f6a0c32e21e3 (patch) | |
tree | 3bd7cb04a615fe9a0420b49aa358f9db8fcd40b9 | |
parent | 26bf9a0c75beda69ad123bee0702af32e9ca13cb (diff) | |
download | bcm5719-llvm-0080fb5a1869ffdaa165895bb695f6a0c32e21e3.tar.gz bcm5719-llvm-0080fb5a1869ffdaa165895bb695f6a0c32e21e3.zip |
This patch removes unused parameter allProperties and converts remaining
parameters in ArrayRef'ize Sema::ActOnAtEnd to ArrayRef.
Patch by Robert Wilhelm.
llvm-svn: 186421
-rw-r--r-- | clang/include/clang/Sema/Sema.h | 5 | ||||
-rw-r--r-- | clang/lib/Parse/ParseObjc.cpp | 5 | ||||
-rw-r--r-- | clang/lib/Sema/SemaDeclObjC.cpp | 16 |
3 files changed, 9 insertions, 17 deletions
diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h index 9f3df07b8c9..f448bf4937c 100644 --- a/clang/include/clang/Sema/Sema.h +++ b/clang/include/clang/Sema/Sema.h @@ -6451,9 +6451,8 @@ public: ObjCInterfaceDecl *ID); Decl *ActOnAtEnd(Scope *S, SourceRange AtEnd, - Decl **allMethods = 0, unsigned allNum = 0, - Decl **allProperties = 0, unsigned pNum = 0, - DeclGroupPtrTy *allTUVars = 0, unsigned tuvNum = 0); + ArrayRef<Decl *>allMethods = None, + ArrayRef<DeclGroupPtrTy>allTUVars = None); Decl *ActOnProperty(Scope *S, SourceLocation AtLoc, SourceLocation LParenLoc, diff --git a/clang/lib/Parse/ParseObjc.cpp b/clang/lib/Parse/ParseObjc.cpp index e4793dbd41b..5e308a6b575 100644 --- a/clang/lib/Parse/ParseObjc.cpp +++ b/clang/lib/Parse/ParseObjc.cpp @@ -537,10 +537,7 @@ void Parser::ParseObjCInterfaceDeclList(tok::ObjCKeywordKind contextKey, // Insert collected methods declarations into the @interface object. // This passes in an invalid SourceLocation for AtEndLoc when EOF is hit. - Actions.ActOnAtEnd(getCurScope(), AtEnd, - allMethods.data(), allMethods.size(), - allProperties.data(), allProperties.size(), - allTUVariables.data(), allTUVariables.size()); + Actions.ActOnAtEnd(getCurScope(), AtEnd, allMethods, allTUVariables); } /// Parse property attribute declarations. diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index bbdf853fc8a..5b4e03adff5 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -2492,13 +2492,9 @@ Sema::ObjCContainerKind Sema::getObjCContainerKind() const { } } -// Note: For class/category implemenations, allMethods/allProperties is -// always null. -Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, - Decl **allMethods, unsigned allNum, - Decl **allProperties, unsigned pNum, - DeclGroupPtrTy *allTUVars, unsigned tuvNum) { - +// Note: For class/category implementations, allMethods is always null. +Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, ArrayRef<Decl *>allMethods, + ArrayRef<DeclGroupPtrTy>allTUVars) { if (getObjCContainerKind() == Sema::OCK_None) return 0; @@ -2516,7 +2512,7 @@ Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, llvm::DenseMap<Selector, const ObjCMethodDecl*> InsMap; llvm::DenseMap<Selector, const ObjCMethodDecl*> ClsMap; - for (unsigned i = 0; i < allNum; i++ ) { + for (unsigned i = 0, e = allMethods.size(); i != e; i++ ) { ObjCMethodDecl *Method = cast_or_null<ObjCMethodDecl>(allMethods[i]); @@ -2683,7 +2679,7 @@ Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, } if (isInterfaceDeclKind) { // Reject invalid vardecls. - for (unsigned i = 0; i != tuvNum; i++) { + for (unsigned i = 0, e = allTUVars.size(); i != e; i++) { DeclGroupRef DG = allTUVars[i].getAsVal<DeclGroupRef>(); for (DeclGroupRef::iterator I = DG.begin(), E = DG.end(); I != E; ++I) if (VarDecl *VDecl = dyn_cast<VarDecl>(*I)) { @@ -2694,7 +2690,7 @@ Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, } ActOnObjCContainerFinishDefinition(); - for (unsigned i = 0; i != tuvNum; i++) { + for (unsigned i = 0, e = allTUVars.size(); i != e; i++) { DeclGroupRef DG = allTUVars[i].getAsVal<DeclGroupRef>(); for (DeclGroupRef::iterator I = DG.begin(), E = DG.end(); I != E; ++I) (*I)->setTopLevelDeclInObjCContainer(); |