Skip to content

Commit 7f4a1d5

Browse files
authored
Merge pull request swiftlang#37334 from DougGregor/implicit-self-capture-feature
2 parents 5ea60e8 + 9411baa commit 7f4a1d5

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

include/swift/Basic/Features.def

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ LANGUAGE_FEATURE(BuiltinExecutor, 0, "Builtin.Executor type", true)
4848
LANGUAGE_FEATURE(BuiltinContinuation, 0, "Continuation builtins", true)
4949
LANGUAGE_FEATURE(BuiltinTaskGroup, 0, "TaskGroup builtins", true)
5050
LANGUAGE_FEATURE(InheritActorContext, 0, "@_inheritActorContext attribute", true)
51+
LANGUAGE_FEATURE(ImplicitSelfCapture, 0, "@_implicitSelfCapture attribute", true)
5152
LANGUAGE_FEATURE(BuiltinBuildExecutor, 0, "Executor-building builtins", true)
5253

5354
#undef LANGUAGE_FEATURE

lib/AST/ASTPrinter.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2776,6 +2776,17 @@ static bool usesFeatureInheritActorContext(Decl *decl) {
27762776
return false;
27772777
}
27782778

2779+
static bool usesFeatureImplicitSelfCapture(Decl *decl) {
2780+
if (auto func = dyn_cast<AbstractFunctionDecl>(decl)) {
2781+
for (auto param : *func->getParameters()) {
2782+
if (param->getAttrs().hasAttribute<ImplicitSelfCaptureAttr>())
2783+
return true;
2784+
}
2785+
}
2786+
2787+
return false;
2788+
}
2789+
27792790
/// Determine the set of "new" features used on a given declaration.
27802791
///
27812792
/// Note: right now, all features we check for are "new". At some point, we'll

0 commit comments

Comments
 (0)