taskWait() actually returns OK on timeout, so drop the timeout warning (the other implementations don't have one). The taskWait() may return ERROR with S_objLib_OBJ_ID_ERROR if the target thread has higher priority; this indicates a successful join, because we already did a rendezvous using joinSem. Delete joinSem *after* calling taskSpareFieldSet(), in case it matters.