support seamless slice in expects

This commit is contained in:
Brendan Hansknecht 2023-12-02 15:49:35 -08:00
parent 66fa633fde
commit 5dd0bdebc9
No known key found for this signature in database
GPG key ID: 0EA784685083E75B
5 changed files with 14 additions and 8 deletions

View file

@ -59,7 +59,9 @@ impl ReplAppMemory for ExpectMemory {
roc_str.as_str()
} else {
let offset = self.deref_usize(addr);
let length = self.deref_usize(addr + std::mem::size_of::<usize>());
let seamless_slice_mask = usize::MAX >> 1;
let length =
self.deref_usize(addr + std::mem::size_of::<usize>()) & seamless_slice_mask;
let _capacity = self.deref_usize(addr + 2 * std::mem::size_of::<usize>());
unsafe {