Skip to content

Commit 4e91aca

Browse files
committed
Enable full SIL verification with -compiler-assertions
1 parent d1a26d0 commit 4e91aca

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/Frontend/CompilerInvocation.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2749,6 +2749,7 @@ static bool ParseSILArgs(SILOptions &Opts, ArgList &Args,
27492749
Opts.EnableLifetimeDependenceDiagnostics);
27502750

27512751
Opts.VerifyAll |= Args.hasArg(OPT_sil_verify_all);
2752+
Opts.VerifyAll |= CONDITIONAL_ASSERT_enabled();
27522753
Opts.VerifyNone |= Args.hasArg(OPT_sil_verify_none);
27532754
Opts.DebugSerialization |= Args.hasArg(OPT_sil_debug_serialization);
27542755
Opts.EmitVerboseSIL |= Args.hasArg(OPT_emit_verbose_sil);
@@ -2769,6 +2770,7 @@ static bool ParseSILArgs(SILOptions &Opts, ArgList &Args,
27692770
Opts.DisableSILPartialApply |=
27702771
Args.hasArg(OPT_disable_sil_partial_apply);
27712772
Opts.VerifySILOwnership &= !Args.hasArg(OPT_disable_sil_ownership_verifier);
2773+
Opts.VerifySILOwnership |= CONDITIONAL_ASSERT_enabled();
27722774
Opts.EnableDynamicReplacementCanCallPreviousImplementation = !Args.hasArg(
27732775
OPT_disable_previous_implementation_calls_in_dynamic_replacements);
27742776
Opts.ParseStdlib = FEOpts.ParseStdlib;
@@ -3652,6 +3654,8 @@ bool CompilerInvocation::parseArgs(
36523654
return true;
36533655
}
36543656

3657+
ParseAssertionArgs(ParsedArgs);
3658+
36553659
if (ParseFrontendArgs(FrontendOpts, ParsedArgs, Diags,
36563660
ConfigurationFileBuffers)) {
36573661
return true;
@@ -3668,8 +3672,6 @@ bool CompilerInvocation::parseArgs(
36683672
return true;
36693673
}
36703674

3671-
ParseAssertionArgs(ParsedArgs);
3672-
36733675
if (ParseLangArgs(LangOpts, ParsedArgs, Diags, FrontendOpts)) {
36743676
return true;
36753677
}

0 commit comments

Comments
 (0)