[SUMMARY] Re: [PATCH v2] c++: ICE on on systems without mmap support [PR124806]

Torbjörn Svensson via Sourceware Forge <[email protected]>
Newsgroups gmane.comp.gcc.patches
Message-ID <bmm.hl7dz0kyhs.gcc.gcc.azoff.204.2.SUMMARY@forge-stage.sourceware.org>
This is a summary of discussions relative to the merge request created by Torbjörn Svensson (azoff) <[email protected]> titled
c++: ICE on on systems without mmap support [PR124806]
since its creation.

Description: Changes since v1:

- Removed all changes in v1.
- Added member `elf_out::begun`, of type bool, that will track when `elf_out::begin()` has executed.
- If `elf_out::begun` is true in `efl_out::end()`, then the file is written, otherwise the write is ignored and only cleanup is performed.

--

Regtested on x86_64-linux-gnu where the `#if 0` has been temporarily changed to `#if 1` on line 240 of gcc/cp/module.cc to simulate no mmap support.
With this change, I no longer see cc1plus crashing.
I've also confirmed, by only running the modules.exp tests for arm-none-eabi on Windows, and with the patch, the failures in PR124806 are fixed.

Ok for trunk, releases/gcc-16 and releases/gcc-15?

--

On systems without mmap support, cc1plus can crash when finishing module
output after earlier errors prevented elf_out::begin from running.  In
that case elf_out::end attempts to fill in the ELF header even though
hdr.buffer was never initialized.

gcc/cp/ChangeLog:

	PR c++/124806
	* module.cc (elf_out::begun): New data member
	(elf_out::begin): Set it after successful initialization.
	(elf_out::end): Do not finalize output that was never begun.

Signed-off-by: Torbjörn SVENSSON <[email protected]>

--

CC: [email protected]
CC: [email protected]

The full and up to date discussion can be found at https://forge.sourceware.org/gcc/gcc/pulls/204

The merge request has been closed without being merged directly on the forge repository.


On 2026-07-28 16:22:09+00:00, Torbjörn Svensson (azoff) wrote:

This is apparently causing other issues. I'm investigating...


On 2026-08-10 05:58:43+00:00, Torbjörn Svensson (azoff) wrote:

Pushed as r17-2849-g94556938452d2b, r16-9520-gd564253eb6c859 and r15-11466-g996979360a4027.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.