This should either always or never be present in release builds - since it breaks binary compatibility. We may enable it always in APR 1.0 yet leave it undefined in most cases.
The differing implementations of this function on Win32 (_RUNNING checks) and Unix (used only for _RESTART) are the reason it will be dropped with APR 1.0.
write_fd duplicates the proc->out stream, it's really redundant and should be replaced in the APR 1.0 API with a bitflag of which proc->in/out/err handles should be health checked.