Skip to content

Commit 4d6392b

Browse files
committed
Add an option to stage in substituted type lowering for function values
1 parent 412a0f1 commit 4d6392b

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

include/swift/Basic/LangOptions.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,9 @@ namespace swift {
211211
/// Enable experimental operator designated types feature.
212212
bool EnableOperatorDesignatedTypes = false;
213213

214+
/// Enable SIL type lowering
215+
bool EnableSubstSILFunctionTypesForFunctionValues = false;
216+
214217
/// Enable constraint solver support for experimental
215218
/// operator protocol designator feature.
216219
bool SolverEnableOperatorDesignatedTypes = false;

include/swift/Option/FrontendOptions.td

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,10 @@ def enable_experimental_static_assert :
344344
Flag<["-"], "enable-experimental-static-assert">,
345345
HelpText<"Enable experimental #assert">;
346346

347+
def enable_subst_sil_function_types_for_function_values :
348+
Flag<["-"], "enable-subst-sil-function-types-for-function-values">,
349+
HelpText<"Use substituted function types for SIL type lowering of function values">;
350+
347351
def enable_deserialization_recovery :
348352
Flag<["-"], "enable-deserialization-recovery">,
349353
HelpText<"Attempt to recover from missing xrefs (etc) in swiftmodules">;

lib/Frontend/CompilerInvocation.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,9 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
274274
Opts.EnableExperimentalStaticAssert |=
275275
Args.hasArg(OPT_enable_experimental_static_assert);
276276

277+
Opts.EnableSubstSILFunctionTypesForFunctionValues |=
278+
Args.hasArg(OPT_enable_subst_sil_function_types_for_function_values);
279+
277280
Opts.EnableOperatorDesignatedTypes |=
278281
Args.hasArg(OPT_enable_operator_designated_types);
279282

0 commit comments

Comments
 (0)