Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 900118 - app-arch/gzip-1.13-r1 has implicit function declarations in configure logs (MUSL-CLANG-SYSTEM)
Summary: app-arch/gzip-1.13-r1 has implicit function declarations in configure logs (M...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: implicit-in-configure
  Show dependency tree
 
Reported: 2023-03-07 09:43 UTC by Agostino Sarubbo
Modified: 2024-07-09 13:17 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,152.10 KB, text/plain)
2023-03-07 09:43 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2023-03-07 09:43:33 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: app-arch/gzip-1.12-r4 has implicit function declarations in configure logs (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.
See also: https://bugs.gentoo.org/898488#c4.
Comment 1 Agostino Sarubbo gentoo-dev 2023-03-07 09:43:36 UTC
Created attachment 856582 [details]
build.log

build log and emerge --info
Comment 2 Matt Turner gentoo-dev 2023-05-10 02:04:40 UTC
>  *   /var/tmp/portage/app-arch/gzip-1.12-r4/work/gzip-1.12/config.log:3546 - MIN
>  *   /var/tmp/portage/app-arch/gzip-1.12-r4/work/gzip-1.12/config.log:5356 - fpurge
Comment 3 Agostino Sarubbo gentoo-dev 2023-08-20 07:18:54 UTC
ci has reproduced this issue with version 1.13 - Updating summary.
Comment 4 Eli Schwartz gentoo-dev 2024-05-26 07:37:43 UTC
This bug is amazing. On glibc, fpurge doesn't exist (__fpurge does). On musl, both exist:

https://git.musl-libc.org/cgit/musl/commit/?id=7640497f5f28ddb4aa13528676a99b603320f47e

*partially* removed, as in only removed from the header:

https://git.musl-libc.org/cgit/musl/commit/?id=a34b0465ba14c70532b8eaba650a9eac228fce57

gnulib promptly misfires all over this, and interestingly also has a cross compile hint that it is assumed to work on musl and skips trying to figure it out.

It doesn't, because there is no decl! It sort of does with added UB, if you ignore implicit function declarations and bind to

root / # nm -D /usr/lib/libc.so | grep fpurge
0000000000057dc0 T __fpurge
0000000000057dc0 W fpurge


This sounds really bad... for gcc 13 and lower. Updating to gcc 14 *fixes* the check because gnulib uses its own copy instead...
Comment 5 Agostino Sarubbo gentoo-dev 2024-07-09 13:17:05 UTC
tinderbox_musl has reproduced this issue with version 1.13-r1 - Updating summary.