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


Reply via email to