https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119825

--- Comment #1 from Sam James <sjames at gcc dot gnu.org> ---
Full backtrace:
```
$ gcobol xml.cbl
cobol1: internal compiler error: Segmentation fault
0x5e9b1e071134 internal_error(char const*, ...)
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/diagnostic-global-context.cc:517
0x5e9b1d7f8c4d crash_signal
        /usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/toplev.cc:323
0x7f4dec01fdbf ???
       
/usr/src/debug/sys-libs/glibc-2.41.9999/glibc-2.41.9999/signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x7f4dec17178a __strcasecmp_l_avx2
        ../sysdeps/x86_64/multiarch/strcmp-avx2.S:287
0x5e9b1ecf10db field_key_t::operator<(field_key_t const&) const
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/symbols.h:764
0x5e9b1ecf10db std::less<field_key_t>::operator()(field_key_t const&,
field_key_t const&) const
       
/usr/src/debug/sys-devel/gcc-15.0.9999/build/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_function.h:405
0x5e9b1ecf10db std::_Rb_tree<field_key_t, std::pair<field_key_t const,
std::__cxx11::list<unsigned long, std::allocator<unsigned long> > >,
std::_Select1st<std::pair<field_key_t const, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> > > >, std::less<field_key_t>,
std::allocator<std::pair<field_key_t const, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> > > > >::_M_lower_bound(std::_Rb_tree_node_base*,
std::_Rb_tree_node_base*, field_key_t const&) const
       
/usr/src/debug/sys-devel/gcc-15.0.9999/build/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_tree.h:2604
0x5e9b1ecf10db std::_Rb_tree<field_key_t, std::pair<field_key_t const,
std::__cxx11::list<unsigned long, std::allocator<unsigned long> > >,
std::_Select1st<std::pair<field_key_t const, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> > > >, std::less<field_key_t>,
std::allocator<std::pair<field_key_t const, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> > > > >::find(field_key_t const&)
       
/usr/src/debug/sys-devel/gcc-15.0.9999/build/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_tree.h:3152
0x5e9b1ecf10db std::map<field_key_t, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> >, std::less<field_key_t>,
std::allocator<std::pair<field_key_t const, std::__cxx11::list<unsigned long,
std::allocator<unsigned long> > > > >::find(field_key_t const&)
       
/usr/src/debug/sys-devel/gcc-15.0.9999/build/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/bits/stl_map.h:1260
0x5e9b1ecf10db symbol_match2
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/symfind.cc:425
0x5e9b1ecf5689 symbol_match
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/symfind.cc:485
0x5e9b1ecf5bf3 symbol_find(unsigned long, std::__cxx11::list<char const*,
std::allocator<char const*> >)
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/symfind.cc:519
0x5e9b1ec6e2bf symbol_find
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/parse_ante.h:2597
0x5e9b1ec6e2bf field_find
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/parse_ante.h:2622
0x5e9b1ecd32de yyparse()
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/parse.y:6376
0x5e9b1ed090a7 parse_file
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/util.cc:2130
0x5e9b1ed090a7 cobol_parse_files(int, char const**)
       
/usr/src/debug/sys-devel/gcc-15.0.9999/gcc-15.0.9999/gcc/cobol/util.cc:2191
```

And Valgrind:
```
==1487699== Invalid read of size 1
==1487699==    at 0x863E024: strcasecmp (vg_replace_strmem.c:770)
==1487699==    by 0x64D30DB: UnknownInlinedFun (symbols.h:764)
==1487699==    by 0x64D30DB: UnknownInlinedFun (stl_function.h:405)
==1487699==    by 0x64D30DB: UnknownInlinedFun (stl_tree.h:2604)
==1487699==    by 0x64D30DB: UnknownInlinedFun (stl_tree.h:3152)
==1487699==    by 0x64D30DB: UnknownInlinedFun (stl_map.h:1260)
==1487699==    by 0x64D30DB: symbol_match2(unsigned long,
std::__cxx11::list<char const*, std::allocator<char const*> >, bool)
(symfind.cc:425)
==1487699==    by 0x64D7689: symbol_match(unsigned long,
std::__cxx11::list<char const*, std::allocator<char const*> >) (symfind.cc:485)
==1487699==    by 0x64D7BF3: symbol_find(unsigned long, std::__cxx11::list<char
const*, std::allocator<char const*> >) (symfind.cc:519)
==1487699==    by 0x64502BF: UnknownInlinedFun (parse_ante.h:2597)
==1487699==    by 0x64502BF: field_find(std::__cxx11::list<char const*,
std::allocator<char const*> > const&) [clone .lto_priv.0] (parse_ante.h:2622)
==1487699==    by 0x64B52DE: yyparse() (parse.y:6376)
==1487699==    by 0x64EB0A7: UnknownInlinedFun (util.cc:2130)
==1487699==    by 0x64EB0A7: cobol_parse_files(int, char const**)
(util.cc:2191)
==1487699==    by 0x6102734: compile_file() [clone .lto_priv.0] (toplev.cc:453)
==1487699==    by 0x60D2AD1: UnknownInlinedFun (toplev.cc:2213)
==1487699==    by 0x60D2AD1: toplev::main(int, char**) (toplev.cc:2376)
==1487699==    by 0x60D1C79: main (main.cc:39)
==1487699==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
```

Reply via email to