Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 894376 - dev-libs/libgee-0.20.6 fails to compile: hashmap.c:4089:23: error: incompatible function pointer types assigning to gboolean ()(GeeMapIterator ) (aka int ()(struct _GeeMapIterator )) from gboolean (GeeHashMapNodeIterator ) (aka int (s
Summary: dev-libs/libgee-0.20.6 fails to compile: hashmap.c:4089:23: error: incompatib...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: c99-porting
  Show dependency tree
 
Reported: 2023-02-14 12:38 UTC by Agostino Sarubbo
Modified: 2023-12-19 09:59 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,92.56 KB, text/plain)
2023-02-14 12:38 UTC, Agostino Sarubbo
Details
Build log and info (new.txt,69.20 KB, text/plain)
2023-07-13 19:00 UTC, germ
Details
libgee-0.20.6-clang-17.patch (libgee-0.20.6-clang-17.patch,5.07 KB, patch)
2023-10-01 03:48 UTC, ppw0
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2023-02-14 12:38:32 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: dev-libs/libgee-0.20.6 fails to compile (MUSL-CLANG-SYSTEM).
Discovered on: amd64 (internal ref: tinderbox_musl)

NOTE:
(MUSL-CLANG-SYSTEM) in the summary means that bug was found on a machine that runs MUSL libc + clang16 but this bug MAY or MAY NOT BE related to musl/clang16.
Comment 1 Agostino Sarubbo gentoo-dev 2023-02-14 12:38:34 UTC
Created attachment 851098 [details]
build.log

build log and emerge --info
Comment 2 germ 2023-07-13 19:00:14 UTC
Created attachment 865462 [details]
Build log and info

Replicated on x86_64 system.
Comment 3 ppw0 2023-10-01 03:48:31 UTC
Created attachment 871870 [details, diff]
libgee-0.20.6-clang-17.patch

Hi,

this patch ought to allow building libgee 0.20.6 with clang-17.
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-10-01 03:51:39 UTC
(In reply to ppw0 from comment #3)
> Created attachment 871870 [details, diff] [details, diff]
> libgee-0.20.6-clang-17.patch
> 
> Hi,
> 
> this patch ought to allow building libgee 0.20.6 with clang-17.

I think you're patching generated C sources from Vala there. See https://github.com/gentoo/gentoo/pull/33036 instead.
Comment 5 Larry the Git Cow gentoo-dev 2023-10-01 07:55:08 UTC
The bug has been closed via the following commit(s):

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

commit b2fa199d292ae87ce73b055be600a9c432c1f764
Author:     Violet Purcell <vimproved@inventati.org>
AuthorDate: 2023-09-24 16:15:03 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-10-01 07:48:45 +0000

    dev-libs/libgee: Call vala_setup in pkg_setup
    
    libgee is written in vala, but the generated C sources are included in
    the release tarballs. However, vala_setup also includes the workaround
    for clang 16+, so call it here anyway.
    
    Closes: https://bugs.gentoo.org/894376
    Signed-off-by: Violet Purcell <vimproved@inventati.org>
    Closes: https://github.com/gentoo/gentoo/pull/33036
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/libgee/libgee-0.20.6.ebuild | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
Comment 6 Larry the Git Cow gentoo-dev 2023-10-01 12:02:51 UTC
The bug has been referenced in the following commit(s):

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

commit cd08499a62bbfd5db1835b970f0096c397cf8c7d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-10-01 12:02:05 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-10-01 12:02:37 +0000

    Revert "dev-libs/libgee: Call vala_setup in pkg_setup"
    
    This reverts commit b2fa199d292ae87ce73b055be600a9c432c1f764.
    
    Bug: https://bugs.gentoo.org/894376
    Bug: https://bugs.gentoo.org/915015
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/libgee/libgee-0.20.6.ebuild | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

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

commit 8df0d79319765acb4a7b2967340bf0e3a2ad843e
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-10-01 12:02:03 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-10-01 12:02:34 +0000

    Revert "dev-libs/libgee: move vala_setup to src_configure"
    
    This reverts commit e5d8fda9c11d7af8452ac8c9084a6939458008e3.
    
    Bug: https://bugs.gentoo.org/894376
    Bug: https://bugs.gentoo.org/915015
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/libgee/libgee-0.20.6.ebuild | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-10-01 12:03:41 UTC
Sorry, I didn't think about it properly. If we're doing that, we need a way to force regeneration of Vala files and I don't know enough about Vala for that yet.

(Otherwise we're adding a pointless BDEPEND..)
Comment 8 David Carlos Manuelda 2023-10-04 14:39:51 UTC
I can confirm this bug on a LLVM16 profile (no MUSL) and the patch applies and compiles successfully
Comment 9 Christopher Fore 2023-12-13 00:49:57 UTC
Happens on GCC 14 as well
Comment 10 Larry the Git Cow gentoo-dev 2023-12-13 00:58:13 UTC
The bug has been closed via the following commit(s):

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

commit 406b2f69bdff4f078f6abba3d4e1959576de0444
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-12-13 00:55:26 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-12-13 00:57:59 +0000

    dev-libs/libgee: update EAPI 7 -> 8, backport Vala (-> C99) fixes
    
    In this case, it appears the Vala itself was wrong, which meant the generated
    C was wrong, rather than the Vala being right, but valac generating junk.
    
    Bug: https://bugs.gentoo.org/915015
    Closes: https://bugs.gentoo.org/894376
    Signed-off-by: Sam James <sam@gentoo.org>

 dev-libs/libgee/files/libgee-0.20.6-c99-2.patch | 55 +++++++++++++++++++++++++
 dev-libs/libgee/files/libgee-0.20.6-c99.patch   | 43 +++++++++++++++++++
 dev-libs/libgee/libgee-0.20.6-r1.ebuild         | 40 ++++++++++++++++++
 3 files changed, 138 insertions(+)