In reply to sasi_8985:
Because forks usually only make sense in the context of time consuming statements. Although in this case there's really no good reason to prohibit functions with void return.
This construct predates classes and fork/join_none which gives you much more flexibility.