[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC: More C errors by default in GCC 14 (no more implicit function declarations etc.)



On Tue, Apr 18, 2023 at 16:07:45 +0200, Florian Weimer wrote:
> Gentoo has been fixing various packages for building with Clang, which
> covers a superset of the issues that need to be addressed:
> 
>   [TRACKER] Support LLVM/Clang as alternative system compiler 
>   <https://bugs.gentoo.org/showdependencytree.cgi?id=408963&hide_resolved=0>
> 
> IIRC, Gentoo has its own mechanism to detect silent build breakage, but
> I think it's mostly focused on autoconf, so it's less comprehensive, and
> also fixes the stuff that is actually relevant to the distribution.
> 

For Gentoo, I wrote (with some help from others) this QA check [1] which
Portage uses to scan Autoconf, CMake, and Meson config logs for implicit
function declarations. It's inspired by a similar bit of code from the
Macports folks [2] and written with both Clang and GCC in mind.

It should be possible to adapt for use by others if you feed it the
right dirs and replace a few functions (`has` and `eqa*` OTTOMH) since
nothing about the core logic is Portage-specific.

Although not so much for silent failures, but maybe still useful for
someone, there's also this QA check [3] which is used to detect other
warnings at build-time.

- Oskari

[1]: https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/90config-impl-decl
[2]: https://github.com/macports/macports-base/blob/15270571ab178ddff693fbd722163fe1d638ed55/src/port1.0/portconfigure.tcl#L1853
[3]: https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/90gcc-warnings

Attachment: signature.asc
Description: PGP signature


Reply to: