https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103167
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Martin Liška from comment #3) > /home/mliska/Programming/binutils-gdb/libbacktrace/elf.c:3178:26: runtime > error: left shift of 163 by 24 places cannot be represented in type 'int' diff --git a/libbacktrace/elf.c b/libbacktrace/elf.c index 79d56146fc6..2cb25883975 100644 --- a/libbacktrace/elf.c +++ b/libbacktrace/elf.c @@ -3175,7 +3175,7 @@ elf_uncompress_lzma_block (const unsigned char *compressed, stream_crc = (compressed[off] | (compressed[off + 1] << 8) | (compressed[off + 2] << 16) - | (compressed[off + 3] << 24)); + | (((unsigned)compressed[off + 3]) << 24)); if (unlikely (computed_crc != stream_crc)) { elf_uncompress_failed (); There is a few more in that file which are similar and needs the same.