Hi Paul, Am 15.10.2019 um 22:04 schrieb Paul Eggert <[email protected]>: > On 10/15/19 4:07 AM, Dagobert Michelsen wrote: >> It seems to be a compiler issue: >> Studio 12.6: works >> Studio 12.5: works >> Studio 12.4: works >> Studio 12.3: broken with the error above >> Studio 12.2: broken with the error above >> Studio 12.1: broken with the error above >> Studio 12: broken with the error above > > That explains why I didn't see the problem; I was using 12.6. > >> Studio 12.3 is already quite old and I am not >> sure if it worth further investigation, what do you think? > > Might as well fix it now that you brought it up. Studio 12.3 is supported by > Oracle until December of this year.[1] Older Studio releases are no longer > supported, so I wouldn't bother using them to check GNU code - why should GNU > worry about a proprietary platform if even the proprietor doesn't? > > The bug has to do with the confusing reinclusion between stdint.h, > inttypes.h, etc. As you say, this is low priority, so rather than figure out > the actual bug I installed the attached workaround, which should be safe on > all platforms. > > [1] Oracle and Sun System Software and Operating Systems – October, 2019. > https://www.oracle.com/us/assets/lifetime-support-hardware-301321.pdf > <0001-inttypes-use-more-robust-test-for-int-range.patch>
Your patch fixes the error, however, now with Studio 12.3 on both Sparc and x86 another error shows up: CXX examples/c++/calc++/calc__-parser.o "/opt/solarisstudio12.3/prod/include/CC/Cstd/vector.cc", line 127: Error: Cannot assign const yy::parser::stack_symbol_type to yy::parser::stack_symbol_type without "yy::parser::stack_symbol_type::operator=(const yy::parser::stack_symbol_type&)";. "/opt/solarisstudio12.3/prod/include/CC/Cstd/vector", line 475: Where: While instantiating "std::vector<yy::parser::stack_symbol_type>::__insert_aux(yy::parser::stack_symbol_type*, const yy::parser::stack_symbol_type&)". "/opt/solarisstudio12.3/prod/include/CC/Cstd/vector", line 475: Where: Instantiated from non-template code. 1 Error(s) detected. gmake[3]: *** [Makefile:7258: examples/c++/calc++/calc__-parser.o] Error 2 Studio 12.4 compiles but has a failing test on x86 only where Sparc builds and tests successfully (I haven’t let it run this for earlier): calc++: PASS: 6 ./examples/test: line 71: 13047 Segmentation Fault (core dumped) $prog "$@" - < input > out_eff 2> err_eff calc++: FAIL: 7 (expected status: 1, effective: 139) -:1.6-44: integer is out of range: 072101108108111044032119111114108100033 FAIL examples/c++/calc++/calc++.test (exit status: 1) Studio 12.5 compiles but has the following test issues on x86 (Sparc compiles and tests fine): Subject: [GNU Bison 3.4.2] testsuite: 310 311 failed Both testfiles dump core: work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/310: total 16752 -rw------- 1 dam csw 30972267 Oct 16 10:16 core -rwxr-xr-x 1 dam csw 334 Oct 16 10:16 run -rw-r--r-- 1 dam csw 44685 Oct 16 10:16 test.c -rw-r--r-- 1 dam csw 2325 Oct 16 10:16 test.h -rw-r--r-- 1 dam csw 1750 Oct 16 10:16 test.y -rw-r--r-- 1 dam csw 1375 Oct 16 10:16 testsuite.log work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/311: total 17722 -rw------- 1 dam csw 31332939 Oct 16 10:16 core -rwxr-xr-x 1 dam csw 334 Oct 16 10:16 run -rw-r--r-- 1 dam csw 43864 Oct 16 10:16 test.c -rw-r--r-- 1 dam csw 1316 Oct 16 10:16 test.y -rw-r--r-- 1 dam csw 2175 Oct 16 10:16 testsuite.log dam@unstable10x [global]:/home/dam/mgar/pkg/bison/trunk > pstack work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/310/core core 'work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/310/core' of 16445: /opt/developerstudio12.5/lib/compilers/bin/iropt -Qy -O3 -fstore -xarc fffffd7fff0a2eba _lwp_kill () + a fffffd7fff047e99 raise () + 19 fffffd7fff026980 abort () + 90 000000000073ffe1 ???????? () 000000000073faa5 libsunir_error_callback () + 1e5 fffffd7fff19e00a ???????? () fffffd7fff19ffe0 ???????? () fffffd7fff1a04d5 ???????? () fffffd7fff1a1a79 ???????? () fffffd7fff18effd ir_proc_write () + 5d 00000000007fea7b write_irfile () + 16b 00000000007ff9d3 ???????? () 0000000000805889 main () + 4f9 000000000052d324 ???????? () dam@unstable10x [global]:/home/dam/mgar/pkg/bison/trunk > pstack work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/311/core core 'work/solaris10-i386/build-isa-pentium_pro/bison-3.4.2/tests/testsuite.dir/311/core' of 16627: /opt/developerstudio12.5/lib/compilers/bin/previse -Qy -O3 -fstore -xa fffffd7fff0a2eba _lwp_kill () + a fffffd7fff047e99 raise () + 19 fffffd7fff026980 abort () + 90 000000000073ffe1 ???????? () 000000000073faa5 libsunir_error_callback () + 1e5 fffffd7fff19e3ca ???????? () fffffd7fff1a063d ???????? () fffffd7fff1a1a79 ???????? () fffffd7fff18effd ir_proc_write () + 5d fffffd7fff1a633f ir_mod_write_and_close () + 2f 00000000007fee3f ???????? () 00000000008058f7 main () + 567 000000000052d324 ???????? () Studio 12.6 x86 compiles and tests cleanly on both x86 and Sparc. I would think these are all compiler bugs and probably wouldn’t worry too much. Best regards — Dago
