[hir] Add lvalue effect for PropertyLoad and ComputedLoad
Sathya Gunasekaran committed
Feb 8, 2023 at 16:01 UTC
662b8d2ff3f9da4576646de621b161e1e63cefe2
1 file changed
+2
compiler/forget/src/Inference/InferReferenceEffects.ts
+2
@@ -690,6 +690,7 @@ function inferBlock(env: Environment, block: BasicBlock) {
690
691
env.reference(instrValue.object, Effect.Read);
692
const lvalue = instr.lvalue;
693
+ lvalue.place.effect = Effect.Mutate;
694
env.initialize(instrValue, env.kind(instrValue.object));
695
env.define(lvalue.place, instrValue);
696
continue;
@@ -722,6 +723,7 @@ function inferBlock(env: Environment, block: BasicBlock) {
723
env.reference(instrValue.object, Effect.Read);
724
env.reference(instrValue.property, Effect.Read);
725
const lvalue = instr.lvalue;
726
+ lvalue.place.effect = Effect.Mutate;
727
env.initialize(instrValue, env.kind(instrValue.object));
728
env.define(lvalue.place, instrValue);
729
continue;