Closed WilliamDue closed 1 year ago
It's an interpreter bug; probably when it looks up qualified names in sizes.
Slightly simplified.
module type data = {
val size : i64
val const : u8 -> [size]u8
}
module make(G: data) = {
def const_map (str : []u8) : [][G.size]u8 = map G.const str
}
module thing = make {
def size : i64 = 3
def const (_ : u8) : [size]u8 = sized size [1, 2, 3]
}
entry main str = id (thing.const_map str)
-- ==
-- input { [1u8,2u8,3u8] }
How to replicate the error
I have a Futhark source file
err.fut
containing the following code.When I enter the REPL
futhark repl err.fut
and dof [1, 2, 3]
as an example I get the following error.Version