[daemon] jsvc build fails under GCC 15.2.0

Ian Emmons <[email protected]> Mon, 16 Mar 2026 15:32:24 -0400
Newsgroups gmane.comp.jakarta.commons.devel
Message-ID <[email protected]>
I am attempting to build jsvc under Ubuntu 25.10 using the default system compiler, GCC 15.2.0. The build fails with the following error:

In file included from jsvc-unix.c:17:

jsvc.h:32:5: error: cannot use keyword ‘false’ as enumeration constant

   32 |     false,

      |     ^~~~~

jsvc.h:32:5: note: ‘false’ is a keyword with ‘-std=c23’ onwards

jsvc.h:34:3: error: expected ‘;’, identifier or ‘(’ before ‘bool’

   34 | } bool;

      |   ^~~~

jsvc.h:34:3: warning: useless type name in empty declaration


This stems from these lines near to top of jsvc.h:

#ifdef OS_DARWIN

#include <stdbool.h>

#else

typedef enum {

    false,

    true

} bool;

#endif


I believe that the line "#ifdef OS_DARWIN" should be replaced by something like this:

#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 */


so that stdbool.h is included for all C99-conforming compilers, not just Apple's clang.


Thanks,



Ian