spec for list append

This commit is contained in:
Folkert 2021-10-03 13:27:47 +02:00
parent 486f1d540f
commit 13d480d5f3
3 changed files with 7 additions and 2 deletions

View file

@ -4972,7 +4972,7 @@ fn run_low_level<'a, 'ctx, 'env>(
let original_wrapper = load_symbol(scope, &args[0]).into_struct_value();
let (elem, elem_layout) = load_symbol_and_layout(scope, &args[1]);
list_append(env, original_wrapper, elem, elem_layout)
list_append(env, original_wrapper, elem, elem_layout, update_mode)
}
ListSwap => {
// List.swap : List elem, Nat, Nat -> List elem

View file

@ -238,6 +238,7 @@ pub fn list_append<'a, 'ctx, 'env>(
original_wrapper: StructValue<'ctx>,
element: BasicValueEnum<'ctx>,
element_layout: &Layout<'a>,
update_mode: UpdateMode,
) -> BasicValueEnum<'ctx> {
call_bitcode_fn_returns_list(
env,
@ -246,6 +247,7 @@ pub fn list_append<'a, 'ctx, 'env>(
env.alignment_intvalue(element_layout),
pass_element_as_opaque(env, element),
layout_width(env, element_layout),
pass_update_mode(env, update_mode),
],
bitcode::LIST_APPEND,
)