Test case: ``` fn f[T](T x) -> tup(T) { ret tup(x); } fn main() -> () { f("foo"); } ``` Result: ``` [pwalton@host-4-84 ~/Source/rust/src] ./bug allocation 0x600000 was not freed rt: fatal, 'leaked memory in rust main loop (1 objects)' failed, rt/memory_region.cpp:99 1 objects ```