Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!sun-barr!decwrl!hplabs!hpfcdc!rer From: rer@hpfcdc.HP.COM (Rob Robason) Newsgroups: comp.sys.hp Subject: Re: HP-UX type declaration problem with signal(2) Message-ID: <5570224@hpfcdc.HP.COM> Date: 26 Jun 89 18:03:44 GMT References: <218@bnrunix.UUCP> Organization: HP Ft. Collins, Co. Lines: 28 > upon looking at and comparing the 6.2 vs: the 6.5, I find > this difference... > 6.2--- > extern (*signal())(); > 6.5--- > extern void (*signal())(); > > Should not 6.5 have a statement more like 6.2????? This is a result of the support of ANSI C, which redefines the return value of signal to be a pointer to void, which is an ANSICism for a "generic" pointer. From the standard: A pointer to void shall have the same representation and alignment requirements as a pointer to a character type. From the ANSI C Rationale: A "pointer to void," void *, is a generic pointer, capable of pointing to any (data) object without trunctation. > Randall > ---------- Rob Robason