mozilla/rust — pull request #14781 by alexcrichton (2014-06-09 21:17:25+00:00)
Title: std: Improve pipe functionality

* os::pipe() now returns IoResult
* os::pipe() is now unsafe because it does not arrange for deallocation of file
descriptors
* PipeStream::pair() has been added. This is a safe method to get a pair of
pipes.
* Dealing with pipes in native process bindings have been improved to be more
robust in the face of failure and intermittent errors. This converts a few
fail!() situations to Err situations.

cc #13538
Closes #14724
[breaking-change]