clang -O2 -Wall -Wextra -Werror=implicit-function-declaration semaphore/sem_clockwait.c -o semaphore/sem_clockwait -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lintl semaphore/sem_clockwait.c:17:7: error: implicit declaration of function 'sem_clockwait' is invalid in C99 [-Werror,-Wimplicit-function-declaration] if ( sem_clockwait(&sem, CLOCK_MONOTONIC, &long_timeout) < 0 ) ^ 1 error generated.