Skip to content

Commit a39c560

Browse files
committed
AST: Remove redundant cloneGenericParams() helper function
1 parent 43e37b7 commit a39c560

File tree

1 file changed

+1
-26
lines changed

1 file changed

+1
-26
lines changed

lib/AST/NameLookup.cpp

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2286,39 +2286,14 @@ static bool declsAreAssociatedTypes(ArrayRef<TypeDecl *> decls) {
22862286
return true;
22872287
}
22882288

2289-
2290-
/// Clone the given generic parameters in the given list. We don't need any
2291-
/// of the requirements, because they will be inferred.
2292-
static GenericParamList *cloneGenericParams(ASTContext &ctx,
2293-
ExtensionDecl *ext,
2294-
GenericParamList *fromParams) {
2295-
// Clone generic parameters.
2296-
SmallVector<GenericTypeParamDecl *, 2> toGenericParams;
2297-
for (auto fromGP : *fromParams) {
2298-
// Create the new generic parameter.
2299-
auto toGP = new (ctx) GenericTypeParamDecl(ext, fromGP->getName(),
2300-
SourceLoc(),
2301-
fromGP->getDepth(),
2302-
fromGP->getIndex());
2303-
toGP->setImplicit(true);
2304-
2305-
// Record new generic parameter.
2306-
toGenericParams.push_back(toGP);
2307-
}
2308-
2309-
return GenericParamList::create(ctx, SourceLoc(), toGenericParams,
2310-
SourceLoc());
2311-
}
2312-
23132289
static GenericParamList *
23142290
createExtensionGenericParams(ASTContext &ctx,
23152291
ExtensionDecl *ext,
23162292
NominalTypeDecl *nominal) {
23172293
// Collect generic parameters from all outer contexts.
23182294
SmallVector<GenericParamList *, 2> allGenericParams;
23192295
nominal->forEachGenericContext([&](GenericParamList *gpList) {
2320-
allGenericParams.push_back(
2321-
cloneGenericParams(ctx, ext, gpList));
2296+
allGenericParams.push_back(gpList->clone(ext));
23222297
});
23232298

23242299
GenericParamList *toParams = nullptr;

0 commit comments

Comments
 (0)