if ((long)value > SEM_VALUE_MAX) {
if (value > SEM_VALUE_MAX) {
int sem_init(sem_t *sem, int pshared, unsigned int value){  if ((long)value > SEM_VALUE_MAX) {    errno = EINVAL;    return -1;  }  if (pshared) {    errno = ENOSYS;    return -1;  }#ifdef TEST_FOR_COMPARE_AND_SWAP  if (has_compare_and_swap == -1) {    has_compare_and_swap = compare_and_swap_is_available();  }#endif#if !defined HAS_COMPARE_AND_SWAP || defined TEST_FOR_COMPARE_AND_SWAP  sem->sem_spinlock = 0;#endif  sem->sem_status = ((long)value << 1) + 1;  return 0;}