On Tue, Feb 24, 2026 at 12:10:56AM +0100, Hilmar Preusse wrote: > On 17.02.26 Gavin Smith ([email protected]) wrote: > > Hello, > > > The next pretest distribution for the next Texinfo release has been > > uploaded to > > > > https://alpha.gnu.org/gnu/texinfo/texinfo-7.2.92.tar.xz > > > > Many thanks to all those who have tested earlier pretests and reported > > the results. There have not been many changes since the previous pretest, > > and we hope to release this as Texinfo 7.3 in a few days' time. > > > > We packaged the pre-releases in Debian and did some tests build of > Debian packages using the pretest version to figure, if the new > version breaks things in the Debian archive. We found that the > gcc-12-doc_12.2.0-1 fails to build: > > gcc/ada/gnat_ugn.texi:24453: warning: @emph should not appear in @code > gcc/ada/gnat_ugn.texi:24473: warning: @emph should not appear in @code > gcc/ada/gnat_ugn.texi:28375: warning: @emph should not appear in @code > Segmentation fault (core dumped) > make[2]: *** [debian/Makefile:116: gnat_ugn.html] Error 139
Thanks for running these tests and reporting this. We definitely don't want to be releasing a program that segfaults on input, especially on gcc documentation. I've been able to reproduce the segmentation fault. I tried building gnat_ugn.texi after downloading manual sources from https://gcc.gnu.org/onlinedocs/12.2.0/. I had to use the full command line from your coredumpctl output below, with the addition of a --force option to account for a missing input file: perl ../../tta/perl/texi2any.pl -D $'fncpp cpp' -D $'fncppint cppinternals' -D $'fngcc gcc' -D $'fngxx g++' -D $'fngccint gccint' -D $'fngccinstall gccinstall' -D $'fngfortran gfortran' -D $'fntreelang treelang' -D $'fngnatrm gnat_rm' -D $'fngnatrmlong GNAT Reference Manual' -D $'fngnatugn gnat_ugn' -D $'fngnatugnlong GNAT User\'s Guide' -D $'fngnatstyle gnat-style' -D $'fngccgo gccgo' -D $'fngcov gcov' -D $'fngcovtool gcov-tool' -D $'fngcovdump gcov-dump' -D $'fnlibgomp libgomp' -D $'fnlibitm libitm' -D $'fnlibquadmath libquadmath' -D $'fnltodump lto-dump' -D $'BUGURL http://bugs.debian.org/' --no-split -Igcc/doc -Igcc/doc/include --html -o gnat_ugn.html gcc/ada/gnat_ugn.texi --force Valgrind reports an error: ==2562765== Memcheck, a memory error detector ==2562765== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==2562765== Using Valgrind-3.22.0 and LibVEX; rerun with -h for copyright info ==2562765== Command: perl ../../tta/perl/texi2any.pl -D fncpp\ cpp -D fncppint\ cppinternals -D fngcc\ gcc -D fngxx\ g++ -D fngccint\ gccint -D fngccinstall\ gccinstall -D fngfortran\ gfortran -D fntreelang\ treelang -D fngnatrm\ gnat_rm -D fngnatrmlong\ GNAT\ Reference\ Manual -D fngnatugn\ gnat_ugn -D fngnatugnlong\ GNAT\ User's\ Guide -D fngnatstyle\ gnat-style -D fngccgo\ gccgo -D fngcov\ gcov -D fngcovtool\ gcov-tool -D fngcovdump\ gcov-dump -D fnlibgomp\ libgomp -D fnlibitm\ libitm -D fnlibquadmath\ libquadmath -D fnltodump\ lto-dump -D BUGURL\ http://bugs.debian.org/ --no-split -Igcc/doc -Igcc/doc/include --html -o gnat_ugn.html gcc/ada/gnat_ugn.texi --force ==2562765== Parent PID: 2440939 ==2562765== ==2562765== Invalid read of size 1 ==2562765== at 0x484F286: __strlen_sse2 (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==2562765== by 0x6A3E5E5: text_append (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6A51259: convert_to_normalized_internal (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6A51572: convert_to_normalized_internal (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6A51618: convert_to_normalized (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6A51AD1: convert_to_identifier (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6A51B65: convert_contents_to_identifier (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo.so.1.0.0) ==2562765== by 0x6B9B8D2: normalized_sectioning_command_filename (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo-convert.so.1.0.0) ==2562765== by 0x6BDB7CE: new_sectioning_command_target (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo-convert.so.1.0.0) ==2562765== by 0x6BDBEF2: set_root_commands_targets_node_files (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo-convert.so.1.0.0) ==2562765== by 0x6BDCD32: html_prepare_conversion_units_targets (in /home/g/src/texinfo/GIT/tta/C/.libs/libtexinfo-convert.so.1.0.0) ==2562765== by 0x753F48A: XS_Texinfo__Convert__ConvertXS_html_output (in /home/g/src/texinfo/GIT/tta/perl/XSTexinfo/.libs/ConvertXS.so) ==2562765== Address 0x255025502550255 is not stack'd, malloc'd or (recently) free'd ==2562765== I'm hopeful we can investigate and fix this. With fewer options, there is not a segfault, but still outputs a large number of warnings about nesting which I do not believe are correct: $ perl ../texinfo-7.2.92/tta/perl/texi2any.pl -I gcc/gcc/doc/include/ gcc/gcc/ada/gnat_ugn.texi gcc/gcc/ada/gnat_ugn.texi:18: warning: @definfoenclose is obsolete gcc/gcc/ada/gnat_ugn.texi:19: warning: @definfoenclose is obsolete gcc/gcc/doc/include/gcc-common.texi:11: @include: could not find gcc-vers.texi gcc/gcc/ada/gnat_ugn.texi:55: warning: undefined flag: version-GCC gcc/gcc/ada/gnat_ugn.texi:942: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:946: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:950: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1237: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1250: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1263: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1276: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1289: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1300: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1314: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1321: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1329: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1352: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1367: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1378: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1390: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1401: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1422: warning: @emph should not appear in @item gcc/gcc/ada/gnat_ugn.texi:1463: warning: @emph should not appear in @item - and it continues. gcc-vers.texi is not present anywhere in docs-sources.tar.gz that I downloaded and is presumably responsible for setting the version-GCC flag. There's nothing wrong with @emph in @item, AFAIK. When building after configuring with --disable-perl-xs, the error messages do not occur: $ perl ../tta/perl/texi2any.pl -I gcc/gcc/doc/include/ gcc/gcc/ada/gnat_ugn.texi gcc/gcc/ada/gnat_ugn.texi:18: warning: @definfoenclose is obsolete gcc/gcc/ada/gnat_ugn.texi:19: warning: @definfoenclose is obsolete gcc/gcc/doc/include//gcc-common.texi:11: @include: could not find gcc-vers.texi gcc/gcc/ada/gnat_ugn.texi:55: warning: undefined flag: version-GCC So there is also a bug here that the warnings are not consistent between XS/pure Perl code, and appear to be incorrect with the XS code. > the coredumpctl reports: > > root@rasppi3:~# coredumpctl info > /run/schroot/mount/arm64-sid-a3802f59-def6-43d6-bfe8-43b535c91509/usr/bin/perl > PID: 620253 (makeinfo) > UID: 1000 (hille) > GID: 1000 (hille) > Signal: 11 (SEGV) > Timestamp: Mon 2026-02-23 20:14:21 CET (3h 42min ago) > Command Line: /usr/bin/perl /usr/bin/makeinfo -D $'fncpp cpp' -D > $'fncppint cppinternals' -D $'fngcc gcc' -D $'fngxx g++' -D $'fngccint > gccint' -D $'fngccinstall gccinstall' -D $'fngfortran gfortran' -D > $'fntreelang treelang' -D $'fngnatrm gnat_rm' -D $'fngnatrmlong GNAT > Reference Manual' -D $'fngnatugn gnat_ugn' -D $'fngnatugnlong GNAT User\'s > Guide' -D $'fngnatstyle gnat-style' -D $'fngccgo gccgo' -D $'fngcov gcov' -D > $'fngcovtool gcov-tool' -D $'fngcovdump gcov-dump' -D $'fnlibgomp libgomp' -D > $'fnlibitm libitm' -D $'fnlibquadmath libquadmath' -D $'fnltodump lto-dump' > -D $'BUGURL http://bugs.debian.org/' --no-split -Igcc/doc -Igcc/doc/include > --html -o gnat_ugn.html gcc/ada/gnat_ugn.texi > Executable: > /run/schroot/mount/arm64-sid-a3802f59-def6-43d6-bfe8-43b535c91509/usr/bin/perl > > So it is basically the perl compiler, which crashes when executing > makeinfo. However due to the XS extensions it may be C code from > TeXInfo too. I'll try to generate backtraces to figure if TeXInfo > causes the issue. It's almost certainly a bug in the XS extensions, rather than a segfault in the Perl interpreter itself. > > I don't see that as showstopper anyway. Keep me in Cc, I'm not > subscribed. > > Hilmar
