Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 932742

Summary: net-proxy/squid-6.7 build failures with GCC-14
Product: Gentoo Linux Reporter: Hank Leininger <hlein>
Component: Current packagesAssignee: Hank Leininger <hlein>
Status: RESOLVED FIXED    
Severity: normal CC: jstein, proxy-maint
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/36815
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 914580    

Description Hank Leininger 2024-05-25 17:24:42 UTC
Attempting to build 6.7 with gcc-14 dies with:

...
In file included from ../../src/CommCalls.h:16,
                 from ../../src/comm.h:13,
                 from ../../src/FwdState.h:16,
                 from Asn.cc:20:
../../src/MasterXaction.h: In instantiation of 'static MasterXaction::Pointer MasterXaction::MakePortless() [with XactionInitiator::Initiator anInitiator = XactionInitiator::initAsn; Pointer = RefCount<MasterXaction>]':
Asn.cc:237:75:   required from here
  237 |    const auto mx = MasterXaction::MakePortless<XactionInitiator::initAsn>();
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~

../../src/MasterXaction.h:49:54: error: 'InstanceId<Class, ValueType>::InstanceId(const InstanceId<Class, ValueType>&) [with Class = MasterXaction; ValueType = long unsigned int]' is private within this context
   49 |         return new MasterXaction(anInitiator, nullptr);
      |                                                      ^
In file included from ../../src/sbuf/SBuf.h:14,
                 from ../../src/sbuf/List.h:12,
                 from ../../src/acl/Data.h:13,
                 from ../../src/acl/Asn.h:12,
                 from Asn.cc:13:
../../src/base/InstanceId.h:72:5: note: declared private here
   72 |     InstanceId(const InstanceId &); ///< not implemented; IDs are unique
      |     ^~~~~~~~~~
../../src/MasterXaction.h:49:54: error: 'InstanceId<Class, ValueType>::InstanceId(const InstanceId<Class, ValueType>&) [with Class = MasterXaction; ValueType = long unsigned int]' is private within this context
...

There might be others that get hit sooner/later depending on USE flags.

This was an older gcc-14 (sys-devel/gcc-14.0.0_pre20231217:14) but there are a few documented gcc-14 fixes in squid 6.8 / 6.9, see https://github.com/squid-cache/squid/commits/v6
Comment 1 Larry the Git Cow gentoo-dev 2024-07-03 13:26:39 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3a9968929b0dbb164a56bcb18db0a5a86839a78

commit e3a9968929b0dbb164a56bcb18db0a5a86839a78
Author:     Hank Leininger <hlein@korelogic.com>
AuthorDate: 2024-05-25 17:44:57 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2024-07-03 13:26:37 +0000

    net-proxy/squid: add 6.9
    
    Fix some gcc-14 compilation issues, add upstream memleak fix patch,
    init script & logrotate/cron fixes.
    
    Closes: https://bugs.gentoo.org/932742
    Closes: https://bugs.gentoo.org/931123
    Closes: https://bugs.gentoo.org/932744
    Closes: https://bugs.gentoo.org/932750
    Signed-off-by: Hank Leininger <hlein@korelogic.com>
    Closes: https://github.com/gentoo/gentoo/pull/36815
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 net-proxy/squid/Manifest                          |   2 +
 net-proxy/squid/files/squid-6.9-memleak_fix.patch | 563 ++++++++++++++++++++++
 net-proxy/squid/files/squid.cron-r1               |  15 +
 net-proxy/squid/files/squid.initd-r7              | 133 +++++
 net-proxy/squid/files/squid.logrotate-r1          |  11 +
 net-proxy/squid/squid-6.9.ebuild                  | 391 +++++++++++++++
 6 files changed, 1115 insertions(+)