
openssh at roumenpetrov
Sep 29, 2011, 12:43 PM
Post #3 of 8
(488 views)
Permalink
|
Damien Miller wrote: > On Thu, 29 Sep 2011, Dag-Erling Sm?rgrav wrote: > > >> I was scanning through my config.h and noticed something that startled >> me a bit. The configure script actually checks what sizeof(char) is, >> and defines.h relies on this information. >> >> This is completely unnecessary. By definition, sizeof(char) is always >> 1. This is not a matter of opinion; the C standard explicitly states, >> in ?6.5.3.4 alinea 3, >> >> When applied to an operand that has type char, unsigned char, or >> signed char, (or a qualified version thereof) the result is 1. >> >> On the other hand, unlike other basic integer types, the signedness of >> char is implementation-defined; see ?6.2.5 alinea 15 and footnote 35. >> Since int8_t is supposed to be a *signed* 8-bit integer, it must be >> explicitly defined as such. Code that relies on char being signed will >> break on IRIX, and probably a number of other implementations. >> > applied - thanks > I don't know what you apply but patch as is just say good bay on old systems where char is with sizeof integer. I don't think that check for size of char has to be removed . Only part "typedef signed char int8_t;" make sense . Regards, Roumen -- Get X.509 certificates support in OpenSSH: http://roumenpetrov.info/openssh/ _______________________________________________ openssh-unix-dev mailing list openssh-unix-dev [at] mindrot https://lists.mindrot.org/mailman/listinfo/openssh-unix-dev
|