Segher Boessenkool wrote:
Hmmm. You know that the signedness of char is not defined?
It is defined, but implementation-defined. Maybe you mean that "plain" char is a separate type from both signed char and unsigned char?
Mostly. I wanted to say that the signedness of char is implementation-defined and differs between the linux targets on different architectures (see S390 vs. the rest for an example).
Besides that, we definitely should enable -fno-strict-aliasing in the gcc flags until we have audited all casts.
Well certainly as long as GCC keeps spitting warnings about this, it almost never gets these warnings wrong.
I don't know whether it is spitting warnings about aliasing, but we're violating the aliasing rules described in the gcc man page.
Regards, Carl-Daniel