Skip to content

Commit 7f83a53

Browse files
committed
Downgrade restrictions on self in actor init to warning
These warnings will automatically turn into errors when Swift 6 exists.
1 parent 0c6063f commit 7f83a53

File tree

2 files changed

+63
-54
lines changed

2 files changed

+63
-54
lines changed

lib/SILOptimizer/Mandatory/DefiniteInitialization.cpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2027,12 +2027,14 @@ void LifetimeChecker::reportIllegalUseForActorInit(
20272027

20282028
case ActorInitKind::Plain:
20292029
diagnose(Module, Use.Inst->getLoc(), diag::self_disallowed_actor_init,
2030-
false, ProblemDesc);
2030+
false, ProblemDesc)
2031+
.warnUntilSwiftVersion(6);
20312032
break;
20322033

20332034
case ActorInitKind::GlobalActorIsolated:
20342035
diagnose(Module, Use.Inst->getLoc(), diag::self_disallowed_actor_init,
2035-
true, ProblemDesc);
2036+
true, ProblemDesc)
2037+
.warnUntilSwiftVersion(6);
20362038
break;
20372039
}
20382040

@@ -2070,11 +2072,13 @@ void LifetimeChecker::handleLoadUseFailureForActorInit(
20702072
llvm::report_fatal_error("this actor init is never problematic!");
20712073

20722074
case ActorInitKind::Plain:
2073-
diagnose(Module, Use.Inst->getLoc(), diag::self_use_actor_init, false);
2075+
diagnose(Module, Use.Inst->getLoc(), diag::self_use_actor_init, false)
2076+
.warnUntilSwiftVersion(6);
20742077
break;
20752078

20762079
case ActorInitKind::GlobalActorIsolated:
2077-
diagnose(Module, Use.Inst->getLoc(), diag::self_use_actor_init, true);
2080+
diagnose(Module, Use.Inst->getLoc(), diag::self_use_actor_init, true)
2081+
.warnUntilSwiftVersion(6);
20782082
break;
20792083
}
20802084

0 commit comments

Comments
 (0)