Paul Eggert wrote:
> If you recompile with -D__CHAR_UNSIGNED__ those messages should go way.
Yes.
> > I'm attaching the non-optimized output. The optimized ('cc -O') output
> > is identical, plus these two errors:
> >
> > #error "Left shift of integers of type long long does not work!!"
>
> This error is more troublesome. Can you debug the program to find out
> exactly which values caused the problem? You can insert printf
> statements to see exactly which shift messed up. Possibly it is a
> compiler bug
This can be hard: if the bug goes away by inserting printf statements,
you can try to macroexpand the line
test_integer_sshift(longlong,"long long",longlong_bitsize);
in main4() by hand and then set breakpoints in a debugger.
It's most likely a compiler bug. The question is whether you prefer
to abandon -O or to abandon 'long long'...
Bruno