NetBSD Problem Report #60970

From www@netbsd.org  Fri Nov  6 10:23:00 2026
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256
	 client-signature RSA-PSS (2048 bits) client-digest SHA256)
	(Client CN "mail.netbsd.org", Issuer "YR1" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id CBFD71A923B
	for <gnats-bugs@gnats.NetBSD.org>; Fri,  6 Nov 2026 10:23:00 +0000 (UTC)
Message-Id: <20261106102259.6788F1A923C@mollari.NetBSD.org>
Date: Fri,  6 Nov 2026 10:22:59 +0000 (UTC)
From: rokuyama.rk@gmail.com
Reply-To: rokuyama.rk@gmail.com
To: gnats-bugs@NetBSD.org
Subject: GCC/m68k 14.4 miscompiles devel/cmake from pkgsrc-2026Q3
X-Send-Pr-Version: www-1.0
X-From4GNATS: "rokuyama.rk@gmail.com via gnats" <gnats-admin@NetBSD.org>

>Number:         60970
>Category:       toolchain
>Synopsis:       GCC/m68k 14.4 miscompiles devel/cmake from pkgsrc-2026Q3
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Nov 06 10:25:00 +0000 2026
>Last-Modified:  Fri Nov 06 10:30:01 +0000 2026
>Originator:     Rin Okuyama
>Release:        11.99.9
>Organization:
Internet Initiative Japan Inc.
>Environment:
NetBSD virt68k-gcc14 11.99.9 NetBSD 11.99.9 (GENERIC) #0: Wed Nov  4 16:18:48 JST 2026  rin@sakaizumii.local:/home/rin/src/sys/arch/virt68k/compile/obj.virt68k-m68k/GENERIC virt68k
>Description:
With GCC 14.4, devel/cmake from pkgsrc-2026Q3 fails to build on
NetBSD/m68k-current:

```
[100%] Built target foo
Installing the project stripped...
gmake: *** [Makefile:154: install/strip] Segmentation fault (core dumped)
*** Error code 2

Stop.
make[1]: stopped making "install" in /usr/pkgsrc/devel/cmake
*** Error code 1

Stop.
make: stopped making "install" in /usr/pkgsrc/devel/cmake
```

Here, cmake-4.4.3/bin/cmake causes SEGV. Backtrace is:

```
$ gdb bin/cmake cmake.core
GNU gdb (GDB) 17.1
(snip)
Core was generated by `cmake'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x0026879e in cmStateSnapshot::GetDiagnostic(cmDiagnostics::DiagnosticCategory, cmDiagnostics::DiagnosticAction) const ()
(gdb) bt
#0  0x0026879e in cmStateSnapshot::GetDiagnostic(cmDiagnostics::DiagnosticCategory, cmDiagnostics::DiagnosticAction) const ()
#1  0x002b4c30 in cmake::ProcessCacheArg(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cmStateEnums::CacheEntryType) ()
#2  0x002b5420 in std::_Function_handler<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cmake*), cmake::SetCacheArgs(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cmake*)#1}>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cmake*&&) ()
#3  0x00730716 in bool cmCommandLineArgument<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cmake*)>::parse<unsigned int, cmake*>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, cmake*&&) const ()
#4  0x002c3e5e in cmake::SetCacheArgs(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)
    ()
#5  0x002c5a46 in cmake::Run(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool) ()
#6  0x000b56a4 in (anonymous namespace)::do_cmake(int, char const* const*) ()
#7  0x006b5b42 in main ()
(gdb)
```

With GCC 12.5, it successfully builds, and devel/re2c, at least,
can be built by using cmake. So, this is a new regression.

If -Os is used instead of -O2, it can be built even with GCC 14.4.
And generated binary can build devel/re2c at least.
>How-To-Repeat:
Described above.
>Fix:
N/A.

As a workaround s/-O2/-Os/ for GCC >= 14 on NetBSD/m68k.

>Audit-Trail:
From: "Rin Okuyama" <rin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/60970 CVS commit: pkgsrc/devel/cmake
Date: Fri, 6 Nov 2026 10:28:20 +0000

 Module Name:	pkgsrc
 Committed By:	rin
 Date:		Fri Nov  6 10:28:20 UTC 2026

 Added Files:
 	pkgsrc/devel/cmake: hacks.mk

 Log Message:
 devel/cmake: Apply opt:-O2:-Os for GCC >= 14 on NetBSD/m68k

 As a workaround for

 PR toolchain/60970: GCC/m68k 14.4 miscompiles devel/cmake from pkgsrc-2026Q3

 With this hack, generated package can build devel/re2c at least.


 To generate a diff of this commit:
 cvs rdiff -u -r0 -r1.1 pkgsrc/devel/cmake/hacks.mk

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.51 2026/08/10 02:28:17 riastradh Exp $
$NetBSD: gnats_config.sh,v 1.10 2026/05/13 22:00:09 riastradh Exp $
Copyright © 1994-2026 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.