aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2022-06-14 01:43:12 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2022-06-14 02:08:25 +0200
commit4880bd1999feb9276faacd9a79647b53b6ffe8be (patch)
tree2afe45d8d6ed1d161352ba7f198715b296fade88
parent9212270048c3bd23f56c20a83d4f89b870b2b26e (diff)
downloadsparse-4880bd1999feb9276faacd9a79647b53b6ffe8be.tar.gz
predefine __ATOMIC_ACQUIRE & friends as weak
In kernel's arch/mips/Makefile the whole content of gcc's -dM is used for CHECKFLAGS. This conflict with some macros also defined internally: builtin:1:9: warning: preprocessor token __ATOMIC_ACQUIRE redefined builtin:0:0: this was the original definition Fix this by using a weak define for these macros. Reported-by: Randy Dunlap <rdunlap@infradead.org> Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--predefine.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/predefine.c b/predefine.c
index 98e38a04..5b0f0caf 100644
--- a/predefine.c
+++ b/predefine.c
@@ -179,12 +179,12 @@ void predefined_macros(void)
if (arch_target->has_int128)
predefined_sizeof("INT128", "", 128);
- predefine("__ATOMIC_RELAXED", 0, "0");
- predefine("__ATOMIC_CONSUME", 0, "1");
- predefine("__ATOMIC_ACQUIRE", 0, "3");
- predefine("__ATOMIC_RELEASE", 0, "4");
- predefine("__ATOMIC_ACQ_REL", 0, "7");
- predefine("__ATOMIC_SEQ_CST", 0, "8");
+ predefine("__ATOMIC_RELAXED", 1, "0");
+ predefine("__ATOMIC_CONSUME", 1, "1");
+ predefine("__ATOMIC_ACQUIRE", 1, "3");
+ predefine("__ATOMIC_RELEASE", 1, "4");
+ predefine("__ATOMIC_ACQ_REL", 1, "7");
+ predefine("__ATOMIC_SEQ_CST", 1, "8");
predefine("__ORDER_LITTLE_ENDIAN__", 1, "1234");
predefine("__ORDER_BIG_ENDIAN__", 1, "4321");