if(sem_trywait(sem->s) < 0)
THROW2(system_error,errno,"sem_trywait(%p) failed: %s",sem,strerror(errno));
#else
if(sem_trywait(sem->s) < 0)
THROW2(system_error,errno,"sem_trywait(%p) failed: %s",sem,strerror(errno));
#else
THROW2(system_error,errno,"sem_trywait(%p) failed: %s",sem,strerror(errno));
#endif
}
THROW2(system_error,errno,"sem_trywait(%p) failed: %s",sem,strerror(errno));
#endif
}