;;;; `free` consumes its argument exactly as any other move does, so the second ;;;; one is a compile error rather than a runtime crash. Nothing analyses this ;;;; specially: it is the same dead-binding rule as passing one to a function. (defn main [] i32 (let [v (vec-new i32)] (free v) (free v) 0))