summaryrefslogtreecommitdiff
path: root/kern/mutex/mutex_plain.c
diff options
context:
space:
mode:
authorRichard Braun <rbraun@sceen.net>2018-01-29 00:52:40 +0100
committerRichard Braun <rbraun@sceen.net>2018-01-29 01:12:05 +0100
commitbc6e853d4b27055056eebfd871aaf0fc60405b0f (patch)
tree9860d545d88a627fcea3309efea89cb27779aaf9 /kern/mutex/mutex_plain.c
parent3ec2193d8538beec5d961d11d67f568d8d3f6cd8 (diff)
Fix undefined behavior in conditional macro replacement
See C11 6.10.3 ยง11 : If there are sequences of preprocessing tokens within the list of arguments that would otherwise act as preprocessing directives, the behavior is undefined.
Diffstat (limited to 'kern/mutex/mutex_plain.c')
-rw-r--r--kern/mutex/mutex_plain.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/kern/mutex/mutex_plain.c b/kern/mutex/mutex_plain.c
index 266bd70b..f12f13fd 100644
--- a/kern/mutex/mutex_plain.c
+++ b/kern/mutex/mutex_plain.c
@@ -173,9 +173,15 @@ mutex_plain_setup(void)
return 0;
}
-INIT_OP_DEFINE(mutex_plain_setup,
- INIT_OP_DEP(mutex_plain_bootstrap, true),
#ifdef CONFIG_MUTEX_DEBUG
+#define MUTEX_PLAIN_DEBUG_INIT_OP_DEPS \
INIT_OP_DEP(syscnt_setup, true),
+#else /* CONFIG_MUTEX_DEBUG */
+#define MUTEX_PLAIN_DEBUG_INIT_OP_DEPS
#endif /* CONFIG_MUTEX_DEBUG */
+
+
+INIT_OP_DEFINE(mutex_plain_setup,
+ INIT_OP_DEP(mutex_plain_bootstrap, true),
+ MUTEX_PLAIN_DEBUG_INIT_OP_DEPS
);