http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47320
Summary: FAIL: 18_support/numeric_limits/lowest.cc execution test Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: dang...@gcc.gnu.org Host: hppa*-*-hpux11.00 Target: hppa*-*-hpux11.00 Build: hppa*-*-hpux11.00 Executing on host: /xxx/gnu/gcc/objdir/./gcc/g++ -shared-libgcc -B/xxx/gnu/gcc/o bjdir/./gcc -nostdinc++ -L/xxx/gnu/gcc/objdir/hppa64-hp-hpux11.00/libstdc++-v3/s rc -L/xxx/gnu/gcc/objdir/hppa64-hp-hpux11.00/libstdc++-v3/src/.libs -B/opt/gnu64 /gcc/gcc-4.6/hppa64-hp-hpux11.00/bin/ -B/opt/gnu64/gcc/gcc-4.6/hppa64-hp-hpux11. 00/lib/ -isystem /opt/gnu64/gcc/gcc-4.6/hppa64-hp-hpux11.00/include -isystem /op t/gnu64/gcc/gcc-4.6/hppa64-hp-hpux11.00/sys-include -B/xxx/gnu/gcc/objdir/hppa64 -hp-hpux11.00/./libstdc++-v3/src/.libs -g -O2 -D_GLIBCXX_ASSERT -fmessage-length =0 -ffunction-sections -fdata-sections -g -O2 -g -O2 -DLOCALEDIR="." -nostdinc++ -I/xxx/gnu/gcc/objdir/hppa64-hp-hpux11.00/libstdc++-v3/include/hppa64-hp-hpux11 .00 -I/xxx/gnu/gcc/objdir/hppa64-hp-hpux11.00/libstdc++-v3/include -I/xxx/gnu/gc c/gcc/libstdc++-v3/libsupc++ -I/xxx/gnu/gcc/gcc/libstdc++-v3/include/backward -I /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/util /xxx/gnu/gcc/gcc/libstdc++-v3/tests uite/18_support/numeric_limits/lowest.cc -std=gnu++0x ./libtestc++.a -lm - o ./lowest.exe (timeout = 600) PASS: 18_support/numeric_limits/lowest.cc (test for excess errors) Setting LD_LIBRARY_PATH to :/xxx/gnu/gcc/objdir/gcc:/xxx/gnu/gcc/objdir/hppa64-h p-hpux11.00/./libstdc++-v3/../libgomp/.libs:/xxx/gnu/gcc/objdir/hppa64-hp-hpux11 .00/./libstdc++-v3/src/.libs::/xxx/gnu/gcc/objdir/gcc:/xxx/gnu/gcc/objdir/hppa64 -hp-hpux11.00/./libstdc++-v3/../libgomp/.libs:/xxx/gnu/gcc/objdir/hppa64-hp-hpux 11.00/./libstdc++-v3/src/.libs Assertion failed: std::numeric_limits<T>::lowest() == -limits_max, file /xxx/gnu /gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc, line 44 FAIL: 18_support/numeric_limits/lowest.cc execution test The "Assertion failed" line number seems slightly off. With gdb, I see the assertion fails in the previous check: Breakpoint 4, 0x40000000000055e4 in do_test<wchar_t> () at /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc:35 35 VERIFY( std::numeric_limits<T>::lowest() == limits_min ); (gdb) bt #0 0x40000000000055e4 in do_test<wchar_t> () at /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc:35 #1 0x4000000000004ec4 in do_test<wchar_t> () at /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc:50 #2 0x4000000000004c3c in test01 () at /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc:57 #3 0x4000000000004d80 in main () at /xxx/gnu/gcc/gcc/libstdc++-v3/testsuite/18_support/numeric_limits/lowest.cc:80 The failing assert is here: (gdb) disass 0x40000000000055a4 0x40000000000055c4 Dump of assembler code from 0x40000000000055a4 to 0x40000000000055c4: 0x40000000000055a4 <_Z7do_testIwEvSt17integral_constantIbLb0EE+100>: copy ret0,r31 0x40000000000055a8 <_Z7do_testIwEvSt17integral_constantIbLb0EE+104>: ldw c(r3),ret0 0x40000000000055ac <_Z7do_testIwEvSt17integral_constantIbLb0EE+108>: sub r0,ret0,ret0 0x40000000000055b0 <_Z7do_testIwEvSt17integral_constantIbLb0EE+112>: extrd,u ret0,63,32,ret0 0x40000000000055b4 <_Z7do_testIwEvSt17integral_constantIbLb0EE+116>: cmpb,=,n ret0,r31,0x40000000000055f0 <_Z7do_testIwEvSt17integral_constantIbLb0EE+176> At 0x40000000000055ac, we have (gdb) p/x $ret0 $7 = 0xffffffff (gdb) p/x $r31 $8 = 0x0 At 0x40000000000055b0, (gdb) p/x $ret0 $10 = 0xffffffff00000001 At 0x40000000000055b4, (gdb) p/x $ret0 $11 = 0x1