From 715d3d5c5c955155bd53f2577693c8803ced8d01 Mon Sep 17 00:00:00 2001
From: Martin 'JaMa' Jansa <Martin.Jansa@gmail.com>
Date: Wed, 22 Jul 2026 03:45:50 +0200
Subject: [PATCH] bitvect: fix build with gcc-15 (#287)

* fixes:
libyasm/bitvect.h:86:32: error: cannot use keyword 'false' as enumeration constant
   86 |         typedef enum boolean { false = FALSE, true = TRUE } boolean;
      |                                ^~~~~
../git/libyasm/bitvect.h:86:32: note: 'false' is a keyword with '-std=c23' onwards

as suggested in:
https://github.com/yasm/yasm/issues/283#issuecomment-2661108816

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
---
 libyasm/bitvect.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libyasm/bitvect.h b/libyasm/bitvect.h
index 3aee3a531..a13470ada 100644
--- a/libyasm/bitvect.h
+++ b/libyasm/bitvect.h
@@ -83,7 +83,11 @@ typedef  Z_longword         *Z_longwordptr;
     #ifdef MACOS_TRADITIONAL
         #define boolean Boolean
     #else
-        typedef enum boolean { false = FALSE, true = TRUE } boolean;
+        #if __STDC_VERSION__ < 202311L
+             typedef enum boolean { false = FALSE, true = TRUE } boolean;
+        #else
+             typedef bool boolean;
+        #endif
     #endif
 #endif
 
