[PATCH] gprofng: protect against standard library macros
Andreas Schwab
schwab@suse.de
Mon Nov 24 10:09:06 GMT 2025
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.
---
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.52.0
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
More information about the Binutils
mailing list