Skip to content

Commit cf34920

Browse files
committed
[SE-0361] Remove the feature flag for bound generic extensions.
1 parent 698b806 commit cf34920

File tree

4 files changed

+0
-25
lines changed

4 files changed

+0
-25
lines changed

include/swift/Basic/LangOptions.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -482,13 +482,6 @@ namespace swift {
482482
// FrontendOptions.
483483
bool AllowModuleWithCompilerErrors = false;
484484

485-
/// Enable extensions of (sugared) bound generic types
486-
///
487-
/// \code
488-
/// extension [Int] { /**/ }
489-
/// \endcode
490-
bool EnableExperimentalBoundGenericExtensions = true;
491-
492485
/// A helper enum to represent whether or not we customized the default
493486
/// ASTVerifier behavior via a frontend flag. By default, we do not
494487
/// customize.

include/swift/Option/FrontendOptions.td

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -313,10 +313,6 @@ def enable_resilience : Flag<["-"], "enable-resilience">,
313313
def enable_experimental_async_top_level :
314314
Flag<["-"], "enable-experimental-async-top-level">,
315315
HelpText<"Enable experimental concurrency in top-level code">;
316-
317-
def enable_experimental_bound_generic_extensions :
318-
Flag<["-"], "enable-experimental-bound-generic-extensions">,
319-
HelpText<"Enable experimental support for extensions of bound generic types">;
320316
}
321317

322318
// HIDDEN FLAGS

lib/Frontend/CompilerInvocation.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -517,9 +517,6 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
517517
Opts.EnableBareSlashRegexLiterals = false;
518518
}
519519

520-
Opts.EnableExperimentalBoundGenericExtensions |=
521-
Args.hasArg(OPT_enable_experimental_bound_generic_extensions);
522-
523520
Opts.DisableAvailabilityChecking |=
524521
Args.hasArg(OPT_disable_availability_checking);
525522
Opts.CheckAPIAvailabilityOnly |=

lib/Sema/TypeCheckDecl.cpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2846,16 +2846,5 @@ ExtendedTypeRequest::evaluate(Evaluator &eval, ExtensionDecl *ext) const {
28462846
return error();
28472847
}
28482848

2849-
// By default, the user cannot extend a bound generic type, unless it's
2850-
// referenced via a non-generic typealias type.
2851-
if (!ext->getASTContext().LangOpts.EnableExperimentalBoundGenericExtensions &&
2852-
extendedType->isSpecialized() &&
2853-
!isNonGenericTypeAliasType(extendedType)) {
2854-
diags.diagnose(ext->getLoc(), diag::extension_specialization,
2855-
extendedType->getAnyNominal()->getName())
2856-
.highlight(extendedRepr->getSourceRange());
2857-
return error();
2858-
}
2859-
28602849
return extendedType;
28612850
}

0 commit comments

Comments
 (0)