Bug#1097917: Patch for sphinxbase: ftbfs with GCC-15
Adrian Bunk
bunk at debian.org
Tue Nov 18 19:26:48 GMT 2025
On Fri, Nov 14, 2025 at 03:41:33PM +0200, Dominik Viererbe wrote:
> Like the error message already says, the source can not be compiled,
> because it defines the type 'bool' and 'bool' is a keyword with
> '-std=c23' onwards. To fix this we can either remove the typedef or
> check if __STDC_VERSION__ < 202311L, see patch below. I tested this
> patch on Ubuntu resolute.
>
> --- a/swig/sphinxbase.i
> +++ b/swig/sphinxbase.i
> @@ -74,10 +74,12 @@
> %begin %{
> #ifndef __cplusplus
> +#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 202311L)
> typedef int bool;
> #define true 1
> #define false 0
> #endif
> +#endif
> #include <sphinxbase/cmd_ln.h>
> #include <sphinxbase/err.h>
This patch might work, but it is not a good solution.
When anything using a typedef'ed bool was part of an ABI (rare,
but cases exist), then using C23 bool instead would break ABI.
Otherwise stdbool.h works with all standards >= C99.
Upstream used the latter to fix it:
https://github.com/cmusphinx/sphinxbase/commit/7397d13fcc56b0a304611a4d2c598eaf1177df2d
cu
Adrian
More information about the Pkg-a11y-devel
mailing list