[Bug debug/78587] dwarf2out.c:1517:45: runtime error: negation of -9223372036854775808 cannot be represented in type 'long int [4]'; cast to an unsigned type to negate this value to itself
trippels at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 29 18:47:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78587
--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
markus@x4 libgcc % cat bid64_add.i
extern void fn2();
void fn1(long p1) {
p1 ^= 9223372036854775808u;
fn2();
}
markus@x4 libgcc % /var/tmp/gcc_build_dir_/./gcc/xgcc
-B/var/tmp/gcc_build_dir_/./gcc/ -B/usr/local/x86_64-pc-linux-gnu/bin/
-B/usr/local/x86_64-pc-linux-gnu/lib/ -c -O2 -g bid64_add.i
../../gcc/gcc/dwarf2out.c:1517:45: runtime error: negation of
-9223372036854775808 cannot be represented in type 'long int [4]'; cast to an
unsigned type to negate this value to itself
======
markus@x4 libgcc % cat bid_binarydecimal.i
typedef struct { int w[4]; } UINT256;
UINT256 a[1];
UINT256 b;
void fn1() {
int e = fn1;
if (e <= -80)
e = 0;
b = a[e];
}
markus@x4 libgcc % /var/tmp/gcc_build_dir_/./gcc/xgcc
-B/var/tmp/gcc_build_dir_/./gcc/ -B/usr/local/x86_64-pc-linux-gnu/bin/
-B/usr/local/x86_64-pc-linux-gnu/lib/ -w -g -O2 -c bid_binarydecimal.i
../../gcc/gcc/dwarf2out.c:13855:54: runtime error: left shift of negative value
-80
More information about the Gcc-bugs
mailing list