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

Bug 882787

Summary: dev-util/gperf-3.1-r1: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
Product: Gentoo Linux Reporter: Lukas Schmelting <lschmelting>
Component: Current packagesAssignee: Anthony Basile <blueness>
Status: RESOLVED FIXED    
Severity: normal CC: lschmelting
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: AMD64   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/28441
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 408963    
Attachments: build.log
emerge --info
gperf-3.2.ebuild

Description Lukas Schmelting 2022-11-24 16:16:49 UTC
Created attachment 836491 [details]
build.log

./getline.cc:58:7: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]

dev-util/gperf-3.1 is also affected
Comment 1 Lukas Schmelting 2022-11-24 16:20:52 UTC
Created attachment 836493 [details]
emerge --info

Using clang-16
Comment 2 Lukas Schmelting 2022-11-24 18:02:21 UTC
gperf-3.2 released but not tagged?:
https://git.savannah.gnu.org/gitweb/?p=gperf.git;a=commit;h=6d53a2dbe0ad692d0f36fd394b7e1962d9a81730
Comment 4 Lukas Schmelting 2022-11-24 20:24:12 UTC
Created attachment 836533 [details]
gperf-3.2.ebuild

Regarding SRC_URL:
No "official" tarball, but a "snapshot" tarball available. I wanted to confirm that the newer tarball solves the issue (yes it does)

Regarding S="..."
Name of downloaded file is "gperf-6d533a2d.tar.gz"; Folder structure is /var/tmp/portage/dev-util/gperf-3.2/work/gperf-6d533a2d/ -> For this reason (and because I don't know better yet I set S="${WORKDIR}/gperf-6d533a2d", which lets the build process succeed
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-11-25 03:02:49 UTC
(We've discussed this on IRC and agreed backporting would be better.)
Comment 6 Larry the Git Cow gentoo-dev 2022-12-06 09:31:04 UTC
The bug has been referenced in the following commit(s):

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

commit 2ea07b25e4bdcbf5af59008efddf89e0e7525711
Author:     Lukas Schmelting <l3s8g@posteo.eu>
AuthorDate: 2022-11-26 15:16:23 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-12-06 09:30:35 +0000

    dev-util/gperf: clang-16 -Wregister fix
    
    Bug: https://bugs.gentoo.org/882787
    Signed-off-by: Lukas Schmelting <l3s8g@posteo.eu>
    Closes: https://github.com/gentoo/gentoo/pull/28441
    Signed-off-by: Sam James <sam@gentoo.org>

 .../gperf/files/gperf-3.1-clang-16-wregister.patch  | 21 +++++++++++++++++++++
 dev-util/gperf/gperf-3.1-r1.ebuild                  |  1 +
 2 files changed, 22 insertions(+)