Skip to content

Commit 969efc8

Browse files
committed
AST: Add several language features to the baseline feature set.
This allows us to remove their explicit `UNINTERESTING_FEATURE` entries for them FeatureSet.cpp. All of these features have been present in the compiler since at least Swift 5.8. NFC.
1 parent b65e926 commit 969efc8

File tree

2 files changed

+8
-18
lines changed

2 files changed

+8
-18
lines changed

include/swift/Basic/Features.def

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -127,31 +127,31 @@ BASELINE_LANGUAGE_FEATURE(BuiltinTaskGroupWithArgument, 0, "TaskGroup builtins")
127127
BASELINE_LANGUAGE_FEATURE(InheritActorContext, 0, "@_inheritActorContext attribute")
128128
BASELINE_LANGUAGE_FEATURE(ImplicitSelfCapture, 0, "@_implicitSelfCapture attribute")
129129
LANGUAGE_FEATURE(BuiltinBuildTaskExecutorRef, 0, "TaskExecutor-building builtins")
130-
LANGUAGE_FEATURE(BuiltinBuildExecutor, 0, "Executor-building builtins")
130+
BASELINE_LANGUAGE_FEATURE(BuiltinBuildExecutor, 0, "Executor-building builtins")
131131
LANGUAGE_FEATURE(BuiltinBuildComplexEqualityExecutor, 0, "Executor-building for 'complexEquality executor' builtins")
132132
BASELINE_LANGUAGE_FEATURE(BuiltinBuildMainExecutor, 0, "MainActor executor building builtin")
133133
BASELINE_LANGUAGE_FEATURE(BuiltinCreateAsyncTaskInGroup, 0, "Task create in task group builtin with extra flags")
134134
LANGUAGE_FEATURE(BuiltinCreateAsyncTaskInGroupWithExecutor, 0, "Task create in task group builtin with extra flags")
135135
LANGUAGE_FEATURE(BuiltinCreateAsyncDiscardingTaskInGroup, 0, "Task create in discarding task group builtin, accounting for the Void return type")
136136
BASELINE_LANGUAGE_FEATURE(BuiltinCreateAsyncTaskWithExecutor, 0, "Task create builtin with extra executor preference")
137137
LANGUAGE_FEATURE(BuiltinCreateAsyncDiscardingTaskInGroupWithExecutor, 0, "Task create in discarding task group with extra executor preference")
138-
LANGUAGE_FEATURE(BuiltinCopy, 0, "Builtin.copy()")
139-
LANGUAGE_FEATURE(BuiltinStackAlloc, 0, "Builtin.stackAlloc")
138+
BASELINE_LANGUAGE_FEATURE(BuiltinCopy, 0, "Builtin.copy()")
139+
BASELINE_LANGUAGE_FEATURE(BuiltinStackAlloc, 0, "Builtin.stackAlloc")
140140
LANGUAGE_FEATURE(BuiltinUnprotectedStackAlloc, 0, "Builtin.unprotectedStackAlloc")
141141
LANGUAGE_FEATURE(BuiltinAllocVector, 0, "Builtin.allocVector")
142-
LANGUAGE_FEATURE(BuiltinTaskRunInline, 0, "Builtin.taskRunInline")
143-
LANGUAGE_FEATURE(BuiltinUnprotectedAddressOf, 0, "Builtin.unprotectedAddressOf")
142+
BASELINE_LANGUAGE_FEATURE(BuiltinTaskRunInline, 0, "Builtin.taskRunInline")
143+
BASELINE_LANGUAGE_FEATURE(BuiltinUnprotectedAddressOf, 0, "Builtin.unprotectedAddressOf")
144144
LANGUAGE_FEATURE(NewCxxMethodSafetyHeuristics, 0, "Only import C++ methods that return pointers (projections) on owned types as unsafe")
145145
SUPPRESSIBLE_LANGUAGE_FEATURE(SpecializeAttributeWithAvailability, 0, "@_specialize attribute with availability")
146-
LANGUAGE_FEATURE(BuiltinAssumeAlignment, 0, "Builtin.assumeAlignment")
147-
LANGUAGE_FEATURE(BuiltinCreateTaskGroupWithFlags, 0, "Builtin.createTaskGroupWithFlags")
146+
BASELINE_LANGUAGE_FEATURE(BuiltinAssumeAlignment, 0, "Builtin.assumeAlignment")
147+
BASELINE_LANGUAGE_FEATURE(BuiltinCreateTaskGroupWithFlags, 0, "Builtin.createTaskGroupWithFlags")
148148
SUPPRESSIBLE_LANGUAGE_FEATURE(UnsafeInheritExecutor, 0, "@_unsafeInheritExecutor")
149149
SUPPRESSIBLE_LANGUAGE_FEATURE(PrimaryAssociatedTypes2, 346, "Primary associated types")
150150
SUPPRESSIBLE_LANGUAGE_FEATURE(UnavailableFromAsync, 0, "@_unavailableFromAsync")
151151
SUPPRESSIBLE_LANGUAGE_FEATURE(NoAsyncAvailability, 340, "@available(*, noasync)")
152152
SUPPRESSIBLE_LANGUAGE_FEATURE(AssociatedTypeAvailability, 0, "Availability on associated types")
153153
SUPPRESSIBLE_LANGUAGE_FEATURE(AsyncSequenceFailure, 0, "Failure associated type on AsyncSequence and AsyncIteratorProtocol")
154-
LANGUAGE_FEATURE(BuiltinIntLiteralAccessors, 368, "Builtin.IntLiteral accessors")
154+
BASELINE_LANGUAGE_FEATURE(BuiltinIntLiteralAccessors, 368, "Builtin.IntLiteral accessors")
155155
LANGUAGE_FEATURE(Macros, 0, "Macros")
156156
LANGUAGE_FEATURE(FreestandingExpressionMacros, 382, "Expression macros")
157157
LANGUAGE_FEATURE(AttachedMacros, 389, "Attached macros")

lib/AST/FeatureSet.cpp

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -180,17 +180,12 @@ static bool usesFeatureRethrowsProtocol(Decl *decl) {
180180
}
181181

182182
UNINTERESTING_FEATURE(BuiltinBuildTaskExecutorRef)
183-
UNINTERESTING_FEATURE(BuiltinBuildExecutor)
184183
UNINTERESTING_FEATURE(BuiltinBuildComplexEqualityExecutor)
185184
UNINTERESTING_FEATURE(BuiltinCreateAsyncTaskInGroupWithExecutor)
186185
UNINTERESTING_FEATURE(BuiltinCreateAsyncDiscardingTaskInGroup)
187186
UNINTERESTING_FEATURE(BuiltinCreateAsyncDiscardingTaskInGroupWithExecutor)
188-
UNINTERESTING_FEATURE(BuiltinCopy)
189-
UNINTERESTING_FEATURE(BuiltinStackAlloc)
190187
UNINTERESTING_FEATURE(BuiltinUnprotectedStackAlloc)
191188
UNINTERESTING_FEATURE(BuiltinAllocVector)
192-
UNINTERESTING_FEATURE(BuiltinTaskRunInline)
193-
UNINTERESTING_FEATURE(BuiltinUnprotectedAddressOf)
194189

195190
static bool usesFeatureNewCxxMethodSafetyHeuristics(Decl *decl) {
196191
return decl->hasClangNode();
@@ -206,9 +201,6 @@ static bool usesFeatureSpecializeAttributeWithAvailability(Decl *decl) {
206201
return false;
207202
}
208203

209-
UNINTERESTING_FEATURE(BuiltinAssumeAlignment)
210-
UNINTERESTING_FEATURE(BuiltinCreateTaskGroupWithFlags)
211-
212204
static bool usesFeatureUnsafeInheritExecutor(Decl *decl) {
213205
return decl->getAttrs().hasAttribute<UnsafeInheritExecutorAttr>();
214206
}
@@ -248,8 +240,6 @@ static bool usesFeatureAsyncSequenceFailure(Decl *decl) {
248240
return false;
249241
}
250242

251-
UNINTERESTING_FEATURE(BuiltinIntLiteralAccessors)
252-
253243
static bool usesFeatureMacros(Decl *decl) { return isa<MacroDecl>(decl); }
254244

255245
static bool usesFeatureFreestandingExpressionMacros(Decl *decl) {

0 commit comments

Comments
 (0)