Slack7.1/linux.2.4 compile error: storage size of `semun' isn't known

Started by PostgreSQL Bugs Listover 25 years ago2 messagesbugs
Jump to latest
#1PostgreSQL Bugs List
pgsql-bugs@postgresql.org

Andreas Hinz (news1@accci.dk) reports a bug with a severity of 4
The lower the number the more severe it is.

Short Description
Slack7.1/linux.2.4 compile error: storage size of `semun' isn't known

Long Description
Hi,
I have a the following error compiling latest CVS of PostgreSQL:

ipc.c: In function `IPCPrivateSemaphoreKill':
ipc.c:246: storage size of `semun' isn't known
ipc.c:246: warning: unused variable `semun'
ipc.c: In function `IpcSemaphoreCreate':
ipc.c:298: storage size of `semun' isn't known
ipc.c:298: warning: unused variable `semun'
ipc.c: In function `IpcSemaphoreKill':
ipc.c:399: storage size of `semun' isn't known
ipc.c:399: warning: unused variable `semun'
ipc.c: In function `IpcSemaphoreGetCount':
ipc.c:502: storage size of `dummy' isn't known
ipc.c:502: warning: unused variable `dummy'
ipc.c: In function `IpcSemaphoreGetValue':
ipc.c:513: storage size of `dummy' isn't known
ipc.c:513: warning: unused variable `dummy'
make[4]: *** [ipc.o] Error 1
make[4]: Leaving directory `/usr/ah/src/pgsql/src/backend/storage/ipc'
make[3]: *** [ipc-recursive] Error 2
make[3]: Leaving directory `/usr/ah/src/pgsql/src/backend/storage'
make[2]: *** [storage-recursive] Error 2
make[2]: Leaving directory `/usr/ah/src/pgsql/src/backend'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/ah/src/pgsql/src'
make: *** [all] Error 2

From /usr/include/linux/sem.h:

union semun {
int val; /* value for SETVAL */
struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */
unsigned short *array; /* array for GETALL & SETALL */
struct seminfo *__buf; /* buffer for IPC_INFO */
void *__pad; 
};

Removing "void *__pad;" from the above makes the compile finish.

Slackware 7.1
linux-2.4.0-test9

Sample Code

No file was uploaded with this report

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: PostgreSQL Bugs List (#1)
Re: Slack7.1/linux.2.4 compile error: storage size of `semun' isn't known

pgsql-bugs@postgresql.org writes:

I have a the following error compiling latest CVS of PostgreSQL:

Odd. Is configure defining HAVE_SYS_SEM_H in src/include/config.h?

What was the last version you compiled successfully?

Removing "void *__pad;" from the above makes the compile finish.

That doesn't make much sense to me either ---- if the union declaration
is broken, why no complaint when the include file is read?

regards, tom lane