Follow-up Comment #29, sr #111312 (group freeipmi):

Okay, I think I found the problem. The C standard does not explicitly define
"char" as signed or unsigned, and the default is compiler and
architecture-dependant. on x86, "char" is signed by default, so the code works
correctly. on ARM, it is unsigned by default, which breaks the code.
Explicitly using "signed char" instead of "char" will remove the
compiler-dependent behavior and fix the issue on ARM, without changing the
behavior on x86. I think it should be safe to correct the code just by
changing the cast to "signed char".


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/support/?111312>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to