C#: Deprecate Ssa::ImplicitEntryDefinition.

This commit is contained in:
Anders Schack-Mulligen
2026-04-28 11:03:03 +02:00
parent 65f647a8c0
commit 80d5e27b46
2 changed files with 4 additions and 5 deletions

View File

@@ -529,11 +529,13 @@ module Ssa {
}
/**
* DEPRECATED: Use `SsaParameterInit` or `SsaImplicitEntryDefinition` instead.
*
* An SSA definition representing the implicit initialization of a variable
* at the beginning of a callable. Either a local scope variable captured by
* the callable or a field or property accessed inside the callable.
*/
class ImplicitEntryDefinition extends ImplicitDefinition {
deprecated class ImplicitEntryDefinition extends ImplicitDefinition {
ImplicitEntryDefinition() {
exists(BasicBlock bb, SourceVariable v |
this.definesAt(v, bb, -1) and

View File

@@ -1430,7 +1430,7 @@ private module ParameterNodes {
}
/** An implicit entry definition for a captured variable. */
class SsaCapturedEntryDefinition extends Ssa::ImplicitEntryDefinition {
deprecated class SsaCapturedEntryDefinition extends Ssa::ImplicitEntryDefinition {
private LocalScopeVariable v;
SsaCapturedEntryDefinition() { this.getSourceVariable().getAssignable() = v }
@@ -2011,9 +2011,6 @@ private class FieldOrPropertyRead extends FieldOrPropertyAccess, AssignableRead
exists(SsaDefinition def, Ssa::ImplicitDefinition idef |
def.getARead() = this and
idef = def.getAnUltimateDefinition()
|
idef instanceof Ssa::ImplicitEntryDefinition or
idef instanceof Ssa::ImplicitCallDefinition
)
}
}