``` fn clone_chan[T](chan[T] c) -> chan[T] { unsafe::reinterpret_cast(rustrt::clone_chan(unsafe::reinterpret_cast(c))) } ``` There is only one path, and it returns, however, the compiler doesn't believe me. You can work around this by adding `ret`.