1f33d51d5SVitaly Buka // RUN: %clangxx -O0 %s -o %t && %run %t
2f33d51d5SVitaly Buka 
30831f8bfSVitaly Buka // Android does not implement these calls.
4f33d51d5SVitaly Buka // UNSUPPORTED: android
5f33d51d5SVitaly Buka 
6f33d51d5SVitaly Buka #include <assert.h>
7f33d51d5SVitaly Buka #include <fcntl.h>
8f33d51d5SVitaly Buka #include <semaphore.h>
9f33d51d5SVitaly Buka #include <stdio.h>
10f33d51d5SVitaly Buka #include <unistd.h>
11f33d51d5SVitaly Buka 
main()12f33d51d5SVitaly Buka int main() {
13f33d51d5SVitaly Buka   char name[1024];
14*bf6000dcSVitaly Buka   sprintf(name, "/sem_open_test_%zu", (size_t)getpid());
15f33d51d5SVitaly Buka 
16*bf6000dcSVitaly Buka   sem_t *s = sem_open(name, O_CREAT, 0644, 123);
17*bf6000dcSVitaly Buka   assert(s != SEM_FAILED);
18*bf6000dcSVitaly Buka   assert(sem_close(s) == 0);
19f33d51d5SVitaly Buka   assert(sem_unlink(name) == 0);
20f33d51d5SVitaly Buka }
21