[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Error compiling bison 3.4.2 on Solaris
From: |
Dagobert Michelsen |
Subject: |
Re: Error compiling bison 3.4.2 on Solaris |
Date: |
Wed, 16 Oct 2019 15:36:47 +0200 |
Hi Paul,
Am 15.10.2019 um 22:04 schrieb Paul Eggert <address@hidden>:
> 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