From mboxrd@z Thu Jan 1 00:00:00 1970 From: toddpw@wrs.com (Todd Whitesel) To: ac131313@cygnus.com (Andrew Cagney) Cc: gdb@cygnus.com Subject: Re: More gdb-4.17.85 testresults Date: Thu, 01 Apr 1999 00:00:00 -0000 Message-id: <199903090524.VAA25575@alabama.wrs.com> References: <36E4A175.DEA4FA72@cygnus.com> X-SW-Source: 1999-q1/msg00105.html > > cc: "../../gdb-4.17.85/gdb/remote.c", line 693: \ > > error 1711: Inconsistent parameter list declaration for "pack_hex_byte". > > This one puzzles me. Looking in remote.c I see: > > static char *pack_hex_byte PARAMS ((char *pkt, unsigned char byte)); > > and then: > > static char * > pack_hex_byte (pkt, byte) > char *pkt; > unsigned char byte; > { > >Is this error because HP's compiler doesn't like the `unsigned char' parameter? Yes, in both cases. This is a pedanticism of the HP compiler; it considers the prototype to have ANSI argument conventions (char and unsigned char really are only 8 bits) but it considers the definition to have K&R argument conventions (char and unsigned char are implicitly promoted to int). Most compilers recognize this case and accept it as a K&R->ANSI transition tool, but the HP/UX compiler insists that the two prototypes are not the same and rejects it. Solutions: - widen the chars to ints - move to ANSI prototypes - disable PARAMS() on that host until ANSIfication proceeds -- Todd Whitesel toddpw @ wrs.com