[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Build failure with GCC 14 - implicit decl. of scm_c_issue_deprecation_wa
From: |
Kacper Słomiński |
Subject: |
Build failure with GCC 14 - implicit decl. of scm_c_issue_deprecation_warning_fmt |
Date: |
Sun, 21 Jul 2024 03:32:13 +0200 |
User-agent: |
Mozilla Thunderbird |
Trying to build guile-reader with GCC 14 causes the build to fail due to
the following error:
libtool: compile: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I.
-I. -I.. -I/usr/include/guile/3.0 -Winline -Wdeclaration-after-statement
-Wcast-align -Wpointer-arith -Wall -O3 -march=znver2 -pipe -ggdb3 -c
compat.c -fPIC -DPIC -o .libs/compat.o
compat.c: In function ‘tag_to_type’:
compat.c:241:9: error: implicit declaration of function
‘scm_c_issue_deprecation_warning_fmt’ [-Wimplicit-function-declaration]
241 | scm_c_issue_deprecation_warning_fmt
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This used to just be a warning, but as of GCC 14 (and Clang 17) is
treated as an error, because C99 disallows it, and compilers have
started enforcing it.
I've had a cursory look, and it seems that the function in question is
provided by "libguile/deprecation.h", which is not included by any
top-level libguile header. This seems to be the case for both Guile 2.2
and Guile 3.0. I'm not sure what it's like in Guile 1.8 though, so I
don't know whether just adding the missing include is the correct fix.
For reference, here's the Gentoo bug report for this:
https://bugs.gentoo.org/874384.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Build failure with GCC 14 - implicit decl. of scm_c_issue_deprecation_warning_fmt,
Kacper Słomiński <=