I ran into a mysterious valgrind issue that I didn't have time to pin down. The problem seems to be involved with the handoff of ownership from caller to callee; valgrind reports reads of freed memory, basically. There is a "FIXME" commit that converts a fn that took Vec<T> to &[T], avoiding the problem (in this particular case, taking a Vec<T> was a bit silly anyhow).