f32.sgnwith double precision. I'll fix it.
#[unsafe]in front and see if that makes it run properly.
goto, which is probably a mistake. There's no way a GPU can handle non-reducible control flow. But the only use of
gotoin the generated code is to break out of nested loops, which is reducible, so it really ought to work.
type t val index [n] 'a : [n]a -> t -> a
I was originally thinking of something like
let index [n] 't 'i (ts: [n]t) (index: i) = ts[i]
but that won't compile regardless