[From nobody Tue Aug 11 08:37:08 2026
Received: (at maintonly) by bugs.debian.org; 13 Apr 2026 13:05:49 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-116.7 required=4.0 tests=BAYES_00,
 BODY_INCLUDES_PACKAGE,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,
 DKIM_VALID_AU,DKIM_VALID_EF,FROMDEVELOPER,FVGT_m_MULTI_ODD,HAS_PACKAGE,
 SPF_HELO_NONE,SPF_NONE,UNPARSEABLE_RELAY,USER_IN_DKIM_WELCOMELIST
 autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 54; hammy, 150; neutral, 259; spammy,
 0. spammytokens:
 hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
 0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
 0.000-+--H*RT:311, 0.000-+--H*RT:108
Return-path: &lt;ema@debian.org&gt;
Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:108]:56730)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;ema@debian.org&gt;) id 1wCGz7-002lTB-1F
 for maintonly@bugs.debian.org; Mon, 13 Apr 2026 13:05:49 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; 
 s=smtpauto.stravinsky;
 h=X-Debian-User:Content-Transfer-Encoding:Content-Type
 :MIME-Version:Message-ID:Subject:To:From:Date:Reply-To:Cc:Content-ID:
 Content-Description:In-Reply-To:References;
 bh=59eEcGmHVjvM7v7uQ6qXtlLdCcxN6OeWhk0OG7miOJ4=; b=GMVl2bHu5c2S/JYiObgW4Z+2qo
 yuvBwCVBCas1pP2iDOWhnUYRIOBQq8qsk6scgSxxyxZB/VXhaIAERPoRwfmcdYipTYHLsdHM9VgTg
 4PgHVPp4AVFnppIC56r9Q7xW3x8Miv+nJKRuRD4OMJ586NYX/NQJ3MzwpX2DW3MaTPFVkD1t2jneS
 M7k0T+mwW3qQqZQXwBWfz2E3wHftx23QmhGeej69LHXh5pL1HKA3Xz9fz0nbpN/FsD32OrmgwsWwc
 xZGvTa1eNzWbvJeSUtrV5rhq4imI0gwQWzHlimKP0lbW6rXLE8wPVM3c2OctKo+wfyvledZeZwMaE
 TB5tkqtw==;
Received: from authenticated user by stravinsky.debian.org with esmtpsa
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;ema@debian.org&gt;) id 1wCGz5-00CJQ3-2e
 for maintonly@bugs.debian.org; Mon, 13 Apr 2026 13:05:48 +0000
Date: Mon, 13 Apr 2026 15:05:47 +0200
From: Emanuele Rocca &lt;ema@debian.org&gt;
To: maintonly@bugs.debian.org
Subject: liblemon: ftbfs with GCC-16
Message-ID: &lt;adzqKypeCSpqeEu7@ariel.home&gt;
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
X-Debian-User: ema
Delivered-To: maintonly@bugs.debian.org

Package: src:liblemon
Version: 1.3.1+dfsg-7
Severity: important
Tags: sid forky ftbfs
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-16

Hi,

liblemon fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.

The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/liblemon_arm64.build.xz

The last lines of the build log are at the end of this report.

To build with GCC 16, either set CC=gcc-16 CXX=g++-16 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html

Please only close this issue after double-checking that the package can be
built correctly with GCC 16.

Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.

[...]


/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:306:19: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::MaxMatching&lt;lemon::SmartGraph&gt;::Status&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::MaxMatching&lt;lemon::SmartGraph&gt;::Status&gt;’} has no member named ‘construct’
  306 |         allocator.construct(&amp;(values[id]), Value());
      |         ~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h: In instantiation of ‘void lemon::ArrayMap&lt;_Graph, _Item, _Value&gt;::add(const Key&amp;) [with _Graph = lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;; _Item = lemon::SmartGraphBase::Node; _Value = lemon::SmartGraphBase::Arc; Key = lemon::SmartGraphBase::Node]’:
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:208:18:   required from here
  208 |     virtual void add(const Key&amp; key) {
      |                  ^~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:221:23: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘construct’
  221 |             allocator.construct(&amp;(new_values[jd]), values[jd]);
      |             ~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:222:23: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘destroy’
  222 |             allocator.destroy(&amp;(values[jd]));
      |             ~~~~~~~~~~^~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:229:17: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘construct’
  229 |       allocator.construct(&amp;(values[id]), Value());
      |       ~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h: In instantiation of ‘void lemon::ArrayMap&lt;_Graph, _Item, _Value&gt;::add(const std::vector&lt;_Item&gt;&amp;) [with _Graph = lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;; _Item = lemon::SmartGraphBase::Node; _Value = lemon::SmartGraphBase::Arc]’:
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:236:18:   required from here
  236 |     virtual void add(const std::vector&lt;Key&gt;&amp; keys) {
      |                  ^~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:263:21: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘construct’
  263 |           allocator.construct(&amp;(new_values[id]), values[id]);
      |           ~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:264:21: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘destroy’
  264 |           allocator.destroy(&amp;(values[id]));
      |           ~~~~~~~~~~^~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:272:19: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘construct’
  272 |         allocator.construct(&amp;(values[id]), Value());
      |         ~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h: In instantiation of ‘void lemon::ArrayMap&lt;_Graph, _Item, _Value&gt;::erase(const Key&amp;) [with _Graph = lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;; _Item = lemon::SmartGraphBase::Node; _Value = lemon::SmartGraphBase::Arc; Key = lemon::SmartGraphBase::Node]’:
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:280:18:   required from here
  280 |     virtual void erase(const Key&amp; key) {
      |                  ^~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:282:17: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘destroy’
  282 |       allocator.destroy(&amp;(values[id]));
      |       ~~~~~~~~~~^~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h: In instantiation of ‘void lemon::ArrayMap&lt;_Graph, _Item, _Value&gt;::erase(const std::vector&lt;_Item&gt;&amp;) [with _Graph = lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;; _Item = lemon::SmartGraphBase::Node; _Value = lemon::SmartGraphBase::Arc]’:
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:289:18:   required from here
  289 |     virtual void erase(const std::vector&lt;Key&gt;&amp; keys) {
      |                  ^~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:292:19: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘destroy’
  292 |         allocator.destroy(&amp;(values[id]));
      |         ~~~~~~~~~~^~~~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h: In instantiation of ‘void lemon::ArrayMap&lt;_Graph, _Item, _Value&gt;::build() [with _Graph = lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;; _Item = lemon::SmartGraphBase::Node; _Value = lemon::SmartGraphBase::Arc]’:
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:300:18:   required from here
  300 |     virtual void build() {
      |                  ^~~~~
/build/reproducible-path/liblemon-1.3.1+dfsg/lemon/bits/array_map.h:306:19: error: ‘lemon::ArrayMap&lt;lemon::GraphExtender&lt;lemon::SmartGraphBase&gt;, lemon::SmartGraphBase::Node, lemon::SmartGraphBase::Arc&gt;::Allocator’ {aka ‘class std::allocator&lt;lemon::SmartGraphBase::Arc&gt;’} has no member named ‘construct’
  306 |         allocator.construct(&amp;(values[id]), Value());
      |         ~~~~~~~~~~^~~~~~~~~
make[4]: *** [tools/CMakeFiles/dimacs-solver.dir/build.make:82: tools/CMakeFiles/dimacs-solver.dir/dimacs-solver.cc.o] Error 1
make[4]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu'
make[3]: *** [CMakeFiles/Makefile2:658: tools/CMakeFiles/dimacs-solver.dir/all] Error 2
[ 88%] Linking CXX executable dimacs-to-lgf
cd /build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/tools &amp;&amp; /usr/bin/cmake -E cmake_link_script CMakeFiles/dimacs-to-lgf.dir/link.txt --verbose=1
/usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/liblemon-1.3.1+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas -Wl,-z,relro -Wl,-z,now -Wl,--dependency-file=CMakeFiles/dimacs-to-lgf.dir/link.d &quot;CMakeFiles/dimacs-to-lgf.dir/dimacs-to-lgf.cc.o&quot; -o dimacs-to-lgf   -L/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/lemon  -Wl,-rpath,/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/lemon: ../lemon/liblemon.so.1.3.1 /usr/lib/aarch64-linux-gnu/libglpk.so
make[4]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu'
[ 88%] Built target dimacs-to-lgf
[ 92%] Linking CXX executable lgf_demo
cd /build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/demo &amp;&amp; /usr/bin/cmake -E cmake_link_script CMakeFiles/lgf_demo.dir/link.txt --verbose=1
/usr/bin/c++ -g -O2 -ffile-prefix-map=/build/reproducible-path/liblemon-1.3.1+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas -Wl,-z,relro -Wl,-z,now -Wl,--dependency-file=CMakeFiles/lgf_demo.dir/link.d CMakeFiles/lgf_demo.dir/lgf_demo.cc.o -o lgf_demo   -L/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/lemon  -Wl,-rpath,/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu/lemon ../lemon/liblemon.so.1.3.1 /usr/lib/aarch64-linux-gnu/libglpk.so
make[4]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu'
[ 92%] Built target lgf_demo
make[3]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu'
make[2]: *** [Makefile:169: all] Error 2
make[2]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg/obj-aarch64-linux-gnu'
dh_auto_build: error: cd obj-aarch64-linux-gnu &amp;&amp; make -j128 INSTALL=&quot;install --strip-program=true&quot; VERBOSE=1 returned exit code 2
make[1]: *** [debian/rules:13: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/liblemon-1.3.1+dfsg'
make: *** [debian/rules:10: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
]