On Wednesday January 25 2006 9:23 am, Olivier Fourdan wrote: > > $ cat s.c > > #include <sys/ipc.h> > > > > $ gcc -c s.c > > In file included from s.c:1: > > /usr/include/sys/ipc.h:51: error: syntax error before > > 'cid_t' /usr/include/sys/ipc.h:56: error: syntax error > > before '}' token > > Works here. gcc 3.3; HP-UX 11.11 on PA-RISC 2.0. Yeah, it works on our earlier 11.23 releases, but not latest: $ gcc -DXOPEN_SOURCE -c s.c In file included from s.c:1: /usr/include/sys/ipc.h:51: error: syntax error before 'cid_t' /usr/include/sys/ipc.h:56: error: syntax error before '}' token That header file has changed radically between those 11.23 releases, and cid_t is new in this release. $cat -n /usr/include/sys/ipc.h | head -70 1 /* @(#) ipc.h $Date: 2004/08/05 11:40:57 $Revision: i380/5 PATCH_11.23 (PHKL_31500) */ 2 /* 3 * (C) Copyright 1996-2004 Hewlett-Packard Development Company, LP 4 */ 5 6 /* 7 * @(#) 8 * Common interprocess communication (IPC) access structure definition, 9 * used by the three IPC mechanisms: messages, semaphores and shared 10 * memory. 11 */ 12 13 #ifndef _SYS_IPC_INCLUDED 14 #define _SYS_IPC_INCLUDED 15 16 #include <sys/stdsyms.h> 17 #include <sys/types.h> 18 19 #ifdef _INCLUDE_XOPEN_SOURCE 20 21 /* Needed types and structures */ 22 23 /* Common IPC Access Structure */ 24 struct ipc_perm { 25 # ifdef _CLASSIC_ID_TYPES 26 unsigned short filler_uid; 27 unsigned short uid; /* owner's user id */ 28 unsigned short filler_gid; 29 unsigned short gid; /* owner's group id */ 30 unsigned short filler_cuid; 31 unsigned short cuid; /* creator's user id */ 32 unsigned short filler_cgid; 33 unsigned short cgid; /* creator's group id */ 34 # else 35 uid_t uid; /* owner's user id */ 36 gid_t gid; /* owner's group id */ 37 uid_t cuid; /* creator's user id */ 38 gid_t cgid; /* creator's group id */ 39 # endif /* not _CLASSIC_ID_TYPES */ 40 41 mode_t mode; /* access modes */ 42 unsigned short __seq16;/* OLD slot usage sequence number */ 43 key_t key; /* key */ 44 45 unsigned short __ndx; /* NOT USED; was ndx of proc who has lock */ 46 unsigned short __wait; /* waits, wanted, lock bits; reserved for 47 specific ipc facilities */ 48 49 unsigned int seq; /* slot usage sequence number */ 50 #ifdef _INCLUDE_HPUX_SOURCE 51 cid_t cid; /* Compartment ID */ 52 #else 53 int __cpad; /* pad for non-hp code */ 54 #endif /* _INCLUDE_HPUX_SOURCE */ 55 char pad[12];/* room for future expansion */ 56 }; ...