package/binutils: add build fixes for host gcc 16.x

Backport upstream patch already included in binutils 2.46 to older
supported versions to fix build errors in gprofng with host gcc 16.x.

Fixes:
2.45.1: https://autobuild.buildroot.net/results/235/235c8a176dada9f9cb5541fcdd188e8f01f4cd22/
2.44: https://autobuild.buildroot.net/results/a53/a53c06dd61083451f9092ed1544619ca4a62211d/

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Bernd Kuhls
2026-07-08 22:34:25 +02:00
committed by Thomas Petazzoni
parent 0c349a8813
commit 9ac19958f2
2 changed files with 70 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
From 5f66aee7f4bec7a2d8378034116f5e5c3dc50f41 Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@suse.de>
Date: Sat, 22 Nov 2025 11:29:43 +0100
Subject: [PATCH] gprofng: protect against standard library macros
The CALL_UTIL macro can expand to an unparsable expression of the argument
is a macro, like with the new const-preserving standard library macros in
C23.
* gprofng/src/collector_module.h (CALL_UTIL): Add parens to not
expand its argument if it is a function-like macro.
Upstream: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=5f66aee7f4bec7a2d8378034116f5e5c3dc50f41
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
gprofng/src/collector_module.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h
index b64d69c45ab..859a6dd1f7d 100644
--- a/gprofng/src/collector_module.h
+++ b/gprofng/src/collector_module.h
@@ -119,7 +119,7 @@ typedef struct CollectorUtilFuncs
extern CollectorUtilFuncs __collector_util_funcs;
extern int __collector_dlsym_guard;
-#define CALL_UTIL(x) __collector_util_funcs.x
+#define CALL_UTIL(x) (__collector_util_funcs.x)
/* The following constants define the meaning of the "void *arg"
* argument of getFrameInfo().
--
2.43.7

View File

@@ -0,0 +1,35 @@
From 5f66aee7f4bec7a2d8378034116f5e5c3dc50f41 Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@suse.de>
Date: Sat, 22 Nov 2025 11:29:43 +0100
Subject: [PATCH] gprofng: protect against standard library macros
The CALL_UTIL macro can expand to an unparsable expression of the argument
is a macro, like with the new const-preserving standard library macros in
C23.
* gprofng/src/collector_module.h (CALL_UTIL): Add parens to not
expand its argument if it is a function-like macro.
Upstream: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=5f66aee7f4bec7a2d8378034116f5e5c3dc50f41
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
gprofng/src/collector_module.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h
index b64d69c45ab..859a6dd1f7d 100644
--- a/gprofng/src/collector_module.h
+++ b/gprofng/src/collector_module.h
@@ -119,7 +119,7 @@ typedef struct CollectorUtilFuncs
extern CollectorUtilFuncs __collector_util_funcs;
extern int __collector_dlsym_guard;
-#define CALL_UTIL(x) __collector_util_funcs.x
+#define CALL_UTIL(x) (__collector_util_funcs.x)
/* The following constants define the meaning of the "void *arg"
* argument of getFrameInfo().
--
2.43.7