mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-19 21:40:15 +08:00
New test.
From-SVN: r16340
This commit is contained in:
parent
f4e31cf56f
commit
5b8f8eeb20
26
gcc/testsuite/gcc.c-torture/compile/971104-1.c
Normal file
26
gcc/testsuite/gcc.c-torture/compile/971104-1.c
Normal file
@ -0,0 +1,26 @@
|
||||
typedef unsigned short ushort;
|
||||
struct sembuf {
|
||||
ushort sem_num;
|
||||
short sem_op;
|
||||
short sem_flg;
|
||||
};
|
||||
union semun {
|
||||
int val;
|
||||
struct semid_ds *buf;
|
||||
ushort *array;
|
||||
struct seminfo *__buf;
|
||||
void *__pad;
|
||||
};
|
||||
static union semun semctl_arg;
|
||||
static int semid;
|
||||
static void up(int sem){
|
||||
struct sembuf sb;
|
||||
sb.sem_num = (unsigned short) sem;
|
||||
sb.sem_op = 1;
|
||||
sb.sem_flg = 0x1000 ;
|
||||
if(semop(semid, &sb, 1) == -1) error("up failure");
|
||||
if(semctl(semid, sb.sem_num, 12 , semctl_arg) == 0)
|
||||
printf("%s had processes sleeping on it!\n",
|
||||
({ "MUTEX ", "BARB_SEM 1", "BARB_SEM 2", "CUST_SEM 1", "CUST_SEM 2", "WA
|
||||
IT_SEM 1", "WAIT_SEM 2", "WAIT_SEM 3", "WAIT_SEM 4"} [( sb.sem_num )]) );
|
||||
}
|
Loading…
Reference in New Issue
Block a user