Xref: utzoo comp.lang.c:14986 comp.lang.c++:2295 Path: utzoo!attcan!uunet!ateng!chip From: chip@ateng.ateng.com (Chip Salzenberg) Newsgroups: comp.lang.c,comp.lang.c++ Subject: Re: signed/unsigned char/short/int/long [was: #defines with parameters] Message-ID: <1988Dec21.133132.23107@ateng.ateng.com> Date: 21 Dec 88 18:31:32 GMT References: <264@aber-cs.UUCP> <8982@smoke.BRL.MIL> <8983@smoke.BRL.MIL> <277@aber-cs.UUCP> <225@twwells.uucp> <330@aber-cs.UUCP> <244@twwells.uucp> <375@aber-cs.UUCP> Distribution: eunet,world Organization: A T Engineering, Tampa, FL Lines: 25 According to pcg@aber-cs.UUCP (Piercarlo Grandi), concerning the fact that the signedness of char is implementation-defined: >[...] it is apparent in hindsight that syntax and >semantics are incomplete, as there is no way to ensure the signedness of a >"char" (a similar problem exists with bit fields), and that syntax does not >properly reflect semantics. Sure. But for hysterical -- oops, I meant historical -- reasons, X3J11 couldn't fix it. They did provide a way to specify signed and unsigned chars when we care to, which is all we really need anyway. >My contentions (for the last time!) are that > [1] this is not necessary, as it is more natural to drop the pretense > that "char" is a type distinct from "int", and instead adopt the notion > that "char" is like "short", an adjective that modifies the length of its > base type; Well, sure. But you're too late. X3J11 did a good job. Let's leave well enough alone. -- Chip Salzenberg or A T Engineering Me? Speak for my company? Surely you jest! Beware of programmers carrying screwdrivers.