1 extern int printf(const char *, ...);
2 typedef unsigned short ushort
;
12 struct seminfo
*__buf
;
15 static union semun semctl_arg
;
17 int semop(int semid
, struct sembuf
*sops
, unsigned nsops
);
18 void error (const char *);
19 int semctl(int semid
, int semnum
, int cmd
, ...);
20 static void up(int sem
){
22 sb
.sem_num
= (unsigned short) sem
;
25 if(semop(semid
, &sb
, 1) == -1) error("up failure");
26 if(semctl(semid
, sb
.sem_num
, 12 , semctl_arg
) == 0)
27 printf("%s had processes sleeping on it!\n",
28 ({ "MUTEX ", "BARB_SEM 1", "BARB_SEM 2", "CUST_SEM 1",
29 "CUST_SEM 2", "WAIT_SEM 1", "WAIT_SEM 2", "WAIT_SEM 3",
30 "WAIT_SEM 4"} /* { dg-error "expected" } */