During an exp-run for llvm 15 (see bug 265425), it turned out that graphics/png fails to build with clang 15, with an error: contrib/libtests/pngvalid.c:11662:4: error: call to undeclared function 'feenableexcept'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW); ^ This is because clang 15 introduced this new warning, and fenv.h only declares feenableexcept() when compiling for C standards before C11. The least disruptive way to solve this is to make the port build with USE_CSTD=gnu89.
Created attachment 235561 [details] graphics/png: fix build with clang 15
Approved
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=4ba3797c9993a25a082ed767d4f44234b1f7dc04 commit 4ba3797c9993a25a082ed767d4f44234b1f7dc04 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2022-07-30 16:37:48 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2022-07-31 17:12:11 +0000 graphics/png: fix build with clang 15 Building png with clang 15 results in an error: contrib/libtests/pngvalid.c:11662:4: error: call to undeclared function 'feenableexcept'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW); ^ This is because clang 15 introduced this new warning, and fenv.h only declares feenableexcept() when compiling for C standards before C11. The least disruptive way to solve this is to make the port build with USE_CSTD=gnu89. PR: 265521 Approved by: portmgr (antoine) MFH: 2022Q3 graphics/png/Makefile | 1 + 1 file changed, 1 insertion(+)