package/unifdef: fix build with gcc 15
Add a patch fixing compilation on hosts with gcc 15. Signed-off-by: James Hilliard <james.hilliard1@gmail.com> Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
f5d4ed04ac
commit
22cd2e0bc4
60
package/unifdef/0002-Don-t-use-C23-constexpr-keyword.patch
Normal file
60
package/unifdef/0002-Don-t-use-C23-constexpr-keyword.patch
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
From d616741e6b0d5b57b66447e85ad32b283b28adde Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sam James <sam@gentoo.org>
|
||||||
|
Date: Sun, 17 Nov 2024 01:26:27 +0000
|
||||||
|
Subject: [PATCH] Don't use C23 constexpr keyword
|
||||||
|
|
||||||
|
This fixes building with upcoming GCC 15 which defaults to -std=gnu23.
|
||||||
|
|
||||||
|
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
|
||||||
|
Upstream: https://github.com/fanf2/unifdef/pull/19
|
||||||
|
---
|
||||||
|
unifdef.c | 10 +++++-----
|
||||||
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/unifdef.c b/unifdef.c
|
||||||
|
index dc145a2..4bd3bda 100644
|
||||||
|
--- a/unifdef.c
|
||||||
|
+++ b/unifdef.c
|
||||||
|
@@ -202,7 +202,7 @@ static int depth; /* current #if nesting */
|
||||||
|
static int delcount; /* count of deleted lines */
|
||||||
|
static unsigned blankcount; /* count of blank lines */
|
||||||
|
static unsigned blankmax; /* maximum recent blankcount */
|
||||||
|
-static bool constexpr; /* constant #if expression */
|
||||||
|
+static bool is_constexpr; /* constant #if expression */
|
||||||
|
static bool zerosyms; /* to format symdepth output */
|
||||||
|
static bool firstsym; /* ditto */
|
||||||
|
|
||||||
|
@@ -1086,7 +1086,7 @@ eval_unary(const struct ops *ops, long *valp, const char **cpp)
|
||||||
|
*valp = (value[sym] != NULL);
|
||||||
|
lt = *valp ? LT_TRUE : LT_FALSE;
|
||||||
|
}
|
||||||
|
- constexpr = false;
|
||||||
|
+ is_constexpr = false;
|
||||||
|
} else if (!endsym(*cp)) {
|
||||||
|
debug("eval%d symbol", prec(ops));
|
||||||
|
sym = findsym(&cp);
|
||||||
|
@@ -1103,7 +1103,7 @@ eval_unary(const struct ops *ops, long *valp, const char **cpp)
|
||||||
|
lt = *valp ? LT_TRUE : LT_FALSE;
|
||||||
|
cp = skipargs(cp);
|
||||||
|
}
|
||||||
|
- constexpr = false;
|
||||||
|
+ is_constexpr = false;
|
||||||
|
} else {
|
||||||
|
debug("eval%d bad expr", prec(ops));
|
||||||
|
return (LT_ERROR);
|
||||||
|
@@ -1170,10 +1170,10 @@ ifeval(const char **cpp)
|
||||||
|
long val = 0;
|
||||||
|
|
||||||
|
debug("eval %s", *cpp);
|
||||||
|
- constexpr = killconsts ? false : true;
|
||||||
|
+ is_constexpr = killconsts ? false : true;
|
||||||
|
ret = eval_table(eval_ops, &val, cpp);
|
||||||
|
debug("eval = %d", val);
|
||||||
|
- return (constexpr ? LT_IF : ret == LT_ERROR ? LT_IF : ret);
|
||||||
|
+ return (is_constexpr ? LT_IF : ret == LT_ERROR ? LT_IF : ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user