:: IO_a_ -> _ IO_ThreadId package:IfElse

Strict version of return because usually we don't need that extra thunk.