fix: working on minor edge cases

fix: zero arg function dependencies should not count as hoisted
fix: tuple index was receiving the wrong type
This commit is contained in:
microproofs 2023-07-28 14:06:09 -04:00 committed by Kasey
parent 4e3ced5b75
commit a689b8748f
1 changed files with 7 additions and 4 deletions

View File

@ -597,9 +597,9 @@ impl<'a> CodeGenerator<'a> {
tipo.clone(), tipo.clone(),
), ),
TypedExpr::TupleIndex { TypedExpr::TupleIndex { index, tuple, .. } => {
tipo, index, tuple, .. AirTree::tuple_index(*index, tuple.tipo(), self.build(tuple))
} => AirTree::tuple_index(*index, tipo.clone(), self.build(tuple)), }
TypedExpr::ErrorTerm { tipo, .. } => AirTree::error(tipo.clone()), TypedExpr::ErrorTerm { tipo, .. } => AirTree::error(tipo.clone()),
@ -2765,9 +2765,12 @@ impl<'a> CodeGenerator<'a> {
)); ));
deps_vec.extend(dependency_deps_to_add); deps_vec.extend(dependency_deps_to_add);
if !params_empty {
hoisted_functions.push((dep_key.clone(), dep_variant.clone())); hoisted_functions.push((dep_key.clone(), dep_variant.clone()));
} }
} }
}
dep_insertions.reverse(); dep_insertions.reverse();