fix: scope issue when using when with a function call subject
This commit is contained in:
@@ -427,8 +427,13 @@ impl<'a> CodeGenerator<'a> {
|
||||
scope: scope.clone(),
|
||||
name: constr_var.clone(),
|
||||
});
|
||||
let mut subject_scope = scope.clone();
|
||||
subject_scope.push(self.id_gen.next());
|
||||
|
||||
self.build_ir(&subject, ir_stack, scope.clone());
|
||||
self.build_ir(&subject, ir_stack, subject_scope.clone());
|
||||
|
||||
let mut scope = scope;
|
||||
scope.push(self.id_gen.next());
|
||||
|
||||
ir_stack.push(Air::When {
|
||||
scope: scope.clone(),
|
||||
@@ -436,9 +441,6 @@ impl<'a> CodeGenerator<'a> {
|
||||
tipo: subject_tipo.clone(),
|
||||
});
|
||||
|
||||
let mut scope = scope;
|
||||
scope.push(self.id_gen.next());
|
||||
|
||||
ir_stack.push(Air::Var {
|
||||
scope,
|
||||
constructor: ValueConstructor::public(
|
||||
|
||||
Reference in New Issue
Block a user