type T = dog; enum dog { dog } fn animal() -> ~str { ~"dog" } fn talk(_d: dog) -> ~str { ~"woof" }