Ticket #8271 (closed defect: invalid)
iconv dumps core running make check on Solaris (SPARC)
| Reported by: | drkirkby | Owned by: | drkirkby |
|---|---|---|---|
| Priority: | major | Milestone: | sage-duplicate/invalid/wontfix |
| Component: | porting: Solaris | Keywords: | |
| Cc: | Work issues: | ||
| Report Upstream: | Reported upstream. Developers deny it's a bug. | Reviewers: | |
| Authors: | Merged in: | ||
| Dependencies: | Stopgaps: |
Description (last modified by drkirkby) (diff)
The iconv package, which will be added to Sage (#8191), dumps core on Solaris 10 SPARC, though all tests pass on Linux, OpenSolaris and OS X.
Here are the results from a Sun Blade 2000, with Solaris 10 03/2005. The bug has been reported to bug-gnu-libiconv at gnu.org
gcc -I. -I. -I../include -I./../include -I../srclib -I./../srclib -I../lib -g -O2 ./genutf8.c ../srclib/libicrt.a -o genutf8 && \
./genutf8 > UTF-8.TXT && \
./check-stateless . UTF-8 && \
rm -f -r genutf8 genutf8.dSYM UTF-8.TXT
./check-stateful . UCS-2BE
./check-stateful . UCS-2LE
./check-stateful . UCS-4BE
./check-stateful . UCS-4LE
./check-stateful . UTF-16
./check-stateful . UTF-16BE
./check-stateful . UTF-16LE
./check-stateful . UTF-32
./check-stateful . UTF-32BE
./check-stateful . UTF-32LE
./check-stateful . UTF-7
./check-stateless . ISO-8859-1
./check-stateless . ISO-8859-2
./check-stateless . ISO-8859-3
./check-stateless . ISO-8859-4
./check-stateless . ISO-8859-5
./check-stateless . ISO-8859-6
./check-stateless . ISO-8859-7
./check-stateless . ISO-8859-8
./check-stateless . ISO-8859-9
./check-stateless . ISO-8859-10
./check-stateless . ISO-8859-11
./check-stateless . ISO-8859-13
./check-stateless . ISO-8859-14
./check-stateless . ISO-8859-15
./check-stateless . ISO-8859-16
./check-stateless . KOI8-R
./check-stateless . KOI8-U
./check-stateless . KOI8-RU
./check-stateless . CP1250
./check-stateless . CP1251
./check-stateless . CP1252
./check-stateless . CP1253
./check-stateless . CP1254
./check-stateless . CP1255
./check-stateful . CP1255
./check-stateless . CP1256
./check-stateless . CP1257
./check-stateless . CP1258
./check-stateful . CP1258
./check-stateless . CP850
./check-stateless . CP862
./check-stateless . CP866
./check-stateless . CP1131
./check-stateless . MacRoman
./check-stateless . MacCentralEurope
./check-stateless . MacIceland
./check-stateless . MacCroatian
./check-stateless . MacRomania
./check-stateless . MacCyrillic
./check-stateless . MacUkraine
./check-stateless . MacGreek
./check-stateless . MacTurkish
./check-stateless . MacHebrew
./check-stateless . MacArabic
./check-stateless . MacThai
./check-stateless . HP-ROMAN8
./check-stateless . NEXTSTEP
./check-stateless . ARMSCII-8
./check-stateless . Georgian-Academy
./check-stateless . Georgian-PS
./check-stateless . KOI8-T
./check-stateless . PT154
./check-stateless . RK1048
./check-stateless . MuleLao-1
./check-stateless . CP1133
./check-stateless . TIS-620
./check-stateless . CP874
./check-stateless . VISCII
./check-stateless . TCVN
./check-stateful . TCVN
./check-stateless . ISO646-JP
./check-stateless . JIS_X0201
./check-stateless . ISO646-CN
./check-stateless . ISO-IR-165
./check-stateless . EUC-JP
./check-stateless . SHIFT_JIS
./check-stateless . CP932
./check-stateful . ISO-2022-JP
./check-stateful . ISO-2022-JP-2
./check-stateful . ISO-2022-JP-1
./check-stateless . EUC-CN
./check-stateless . GBK
./check-stateless . CP936
gcc -I. -I. -I../include -I./../include -I../srclib -I./../srclib -I../lib -g -O2 ./gengb18030z.c ../srclib/libicrt.a -o gengb18030z && \
{ cat ./GB18030-BMP.TXT ; ./gengb18030z ; } | sort > GB18030.TXT && \
./check-stateless . GB18030 && \
rm -f -r gengb18030z gengb18030z.dSYM GB18030.TXT
./check-stateful . ISO-2022-CN
./check-stateful . ISO-2022-CN-EXT
./check-stateful . HZ
./check-stateless . EUC-TW
./check-stateless . BIG5
./check-stateless . CP950
./check-stateless . BIG5-HKSCS:1999
./check-stateful . BIG5-HKSCS:1999
./check-stateless . BIG5-HKSCS:2001
./check-stateful . BIG5-HKSCS:2001
./check-stateless . BIG5-HKSCS:2004
./check-stateful . BIG5-HKSCS:2004
./check-stateless . EUC-KR
./check-stateless . CP949
./check-stateless . JOHAB
./check-stateful . ISO-2022-KR
make check-extra
make[2]: Entering directory `/export/home/drkirkby/iconv-1.13.1/src/tests'
make[2]: Nothing to be done for `check-extra'.
make[2]: Leaving directory `/export/home/drkirkby/iconv-1.13.1/src/tests'
./check-translit . Quotes UTF-8 ISO-8859-1
./check-translit . Quotes UTF-8 ASCII
./check-translit . Translit1 ISO-8859-1 ASCII
./check-translitfailure . TranslitFail1 ISO-8859-1 ASCII
./check-subst
Segmentation Fault - core dumped
Segmentation Fault - core dumped
Segmentation Fault - core dumped
./test-shiftseq
make[1]: Leaving directory `/export/home/drkirkby/iconv-1.13.1/src/tests'
Change History
comment:2 Changed 3 years ago by drkirkby
- Owner changed from AlexGhitza to drkirkby
- Component changed from algebra to solaris
- Description modified (diff)
- Report Upstream changed from N/A to Reported upstream. Little or no feedback.
comment:3 Changed 3 years ago by drkirkby
Running gdb on the core file I see:
(gdb) target core ./core Core was generated by `printf B<0x%010000x><0x%010000x>se B<0x%010000x><0x%010000x>bchen\n 0xC3 0xB6 0'. Program terminated with signal 11, Segmentation fault. #0 0xff2d1f8c in ?? () (gdb)
comment:4 Changed 3 years ago by drkirkby
- Status changed from new to closed
- Resolution set to invalid
- Report Upstream changed from Reported upstream. Little or no feedback. to Reported upstream. Developers deny it's a bug.
I'm now told by the iconv developers this is a Solaris bug:
You see "Segmentation Fault - core dumped" messages, but the test suite
continued to run and passed. ("make" did not report a failing target.)
The 'check-subst' file contains a comment about the origin of these messages:
# This printf command crashes on Solaris 10.
# See <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6550204>.
So, it does not indicate a bug in GNU libiconv, only in a Solaris program that
is used by the testsuite. Harmless.
Bruno
I expect with some patches, this could be solved, as it was fixed several years ago, but I'm testing this on an early release of Solaris.
Note: See
TracTickets for help on using
tickets.
