https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122060
Bug ID: 122060
Summary: ICE when compiling geany (debian/x86-64)
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: basile at starynkevitch dot net
Target Milestone: ---
I did compile gcc version 16.0.0 20250907 from its snapshot.
Linux/Debian/trixie if that matters on x86-64 (AMD Ryzen Threadripper 2970WX)
/usr/src/Lang/gcc-16snap is a symlink to gcc-16-20250907
It has been successfully built (outside of its source tree, in
/usr/src/Lang/_GccTrunk/ ...) and tested (successfully) on many open source
software.
I did compile that GCC 16 snapshot using
/usr/src/Lang/gcc-16snap/configure -v --prefix=/usr/local
--with-gcc-major-version-only --program-suffix=-16 --enable-shared
--enable-plugin --enable-default-pie --with-system-zlib --disable-multilib
--with-tune=native --enable-checking=release --enable-host-shared
--build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
CFLAGS='-g -O2' CXXFLAGS='-g -O2' --enable-werror build_alias=x86_64-linux-gnu
host_alias=x86_64-linux-gnu target_alias=x86_64-linux-gnu
--enable-languages=c,c++,jit,lto
Bootstrap of that GCC snapshot is ok.
Now I just git clone-d https://github.com/geany/geany.git
My GTK library is a 3.0 one
Its commit 426e427030fe0118
Then configured that geany using
'./configure' 'CC=gcc' 'CXX=g++' '--enable-dependency-tracking'
'--disable-silent-rules' 'CFLAGS=-O2 -g' 'CXXFLAGS=-O2 -g'
the gcc and g++ are my symlinks in my $PATH to the appropriate gcc 16 snapshot
e.g.
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-linux-gnu/16/lto-wrapper
Target: x86_64-linux-gnu
Configured with: /usr/src/Lang/gcc-16snap/configure -v --prefix=/usr/local
--with-gcc-major-version-only --program-suffix=-16 --enable-shared
--enable-plugin --enable-default-pie --with-system-zlib --disable-multilib
--with-tune=native --enable-checking=release --enable-host-shared
--build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
CFLAGS='-g -O2' CXXFLAGS='-g -O2' --enable-werror build_alias=x86_64-linux-gnu
host_alias=x86_64-linux-gnu target_alias=x86_64-linux-gnu
--enable-languages=c,c++,jit,lto
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 16.0.0 20250907 (experimental) (GCC)
and likewise for g++
My make is
make --version
GNU Make 4.4.1
Built for x86_64-pc-linux-gnu
the build of geany is failing in a reproducible way
make[2]: Entering directory '/usr/src/Editor/geany/scintilla'
/bin/bash ../libtool --silent --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I.. -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
-I/usr/include/sysprof-6 -I/usr/include/harfbuzz -I/usr/include/freetype2
-I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid
-I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1
-I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu
-I/usr/include/webp -I/usr/include/gio-unix-2.0 -I/usr/include/cloudproviders
-I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0
-I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -pthread
-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_56
-DGDK_DISABLE_DEPRECATION_WARNINGS -fvisibility=hidden
-DGEANY_EXPORT_SYMBOL="__attribute__((visibility(\"default\")))"
-DGEANY_API_SYMBOL=GEANY_EXPORT_SYMBOL -I./src -I./include -I./lexilla/include
-DNDEBUG -DGTK -DSCI_LEXER -DNO_CXX11_REGEX -std=c++17 -O2 -g -MT
src/libscintilla_la-Editor.lo -MD -MP -MF src/.deps/libscintilla_la-Editor.Tpo
-c -o src/libscintilla_la-Editor.lo `test -f 'src/Editor.cxx' || echo
'./'`src/Editor.cxx
src/Editor.cxx: In member function 'void
Scintilla::Internal::Editor::CopySelectionRange(Scintilla::Internal::SelectionText*,
bool)':
src/Editor.cxx:4358:6: internal compiler error: Segmentation fault
4358 | void Editor::CopySelectionRange(SelectionText *ss, bool allowLineCopy)
{
| ^~~~~~
0x24068b1 internal_error(char const*, ...)
/usr/src/Lang/gcc-16snap/gcc/diagnostic-global-context.cc:786
0x10ac1fa crash_signal
/usr/src/Lang/gcc-16snap/gcc/toplev.cc:323
0x7fb09252cdef ???
./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0xadfd13 lookup_page_table_entry
/usr/src/Lang/gcc-16snap/gcc/ggc-page.cc:647
0xadfd13 ggc_set_mark(void const*)
/usr/src/Lang/gcc-16snap/gcc/ggc-page.cc:1653
0xbcb1dd gt_ggc_mx_addr_table_entry(void*)
./gt-dwarf2out.h:88
0xbcb58d gt_ggc_mx(dw_attr_struct&)
./gt-dwarf2out.h:251
0xbcb78d void gt_ggc_mx<dw_attr_struct>(vec<dw_attr_struct, va_gc, vl_embed>*)
/usr/src/Lang/gcc-16snap/gcc/vec.h:1458
0xbcb78d gt_ggc_mx_vec_dw_attr_node_va_gc_(void*)
./gt-dwarf2out.h:243
0xbcb78d gt_ggc_mx_vec_dw_attr_node_va_gc_(void*)
./gt-dwarf2out.h:238
0xbcb7fb gt_ggc_mx_die_struct(void*)
./gt-dwarf2out.h:45
0xbcb7fb gt_ggc_mx_die_struct(void*)
./gt-dwarf2out.h:23
0xa0b7a7 gt_ggc_mx_lang_tree_node(void*)
./gt-cp-tree.h:441
0xa0b214 gt_ggc_mx_lang_tree_node(void*)
./gt-cp-tree.h:328
0xd9478e void gt_ggc_mx<tree_node*>(vec<tree_node*, va_gc, vl_embed>*)
/usr/src/Lang/gcc-16snap/gcc/vec.h:1458
0xd9478e gt_ggc_mx_vec_tree_va_gc_(void*)
/usr/src/Lang/_BuildGcc16/gcc/gtype-desc.cc:1934
0xd9478e gt_ggc_mx_vec_tree_va_gc_(void*)
/usr/src/Lang/_BuildGcc16/gcc/gtype-desc.cc:1929
0xa0bd7e gt_ggc_mx_lang_type(void*)
./gt-cp-tree.h:36
0xa0bd7e gt_ggc_mx_lang_type(void*)
./gt-cp-tree.h:23
0xa0b3ac gt_ggc_mx_lang_tree_node(void*)
./gt-cp-tree.h:451
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
make[2]: *** [Makefile:1977: src/libscintilla_la-Editor.lo] Error 1
make[2]: Leaving directory '/usr/src/Editor/geany/scintilla'
make[1]: *** [Makefile:596: all-recursive] Error 1
make[1]: Leaving directory '/usr/src/Editor/geany'
make: *** [Makefile:480: all] Error 2