]> git.gag.com Git - fw/openocd/commitdiff
flash/nor/stmsmi: fix compile error with clang 12.0.0
authorAntonio Borneo <borneo.antonio@gmail.com>
Sat, 5 Dec 2020 22:28:53 +0000 (23:28 +0100)
committerAntonio Borneo <borneo.antonio@gmail.com>
Wed, 9 Dec 2020 14:30:27 +0000 (14:30 +0000)
The git preliminarily version of clang 12.0.0_r370171
f067bc3c0ad6 reports an error in the expansion of the macro
SMI_READ_REG():

error: '(' and '{' tokens introducing statement expression
appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]

Remove one intermediate macro expansion to make clang happy.

Change-Id: I8ae6d9c18808467ba8044d70cbf0a4f76a18d3e6
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5958
Tested-by: jenkins
Reviewed-by: Xiaofan <xiaofanc@gmail.com>
src/flash/nor/stmsmi.c

index e73dd22f61faade1f5a1b3747dcd3db5e1a3b556..f633e361924d4a0165e6d58f51234d9de32dbbc5 100644 (file)
@@ -41,9 +41,8 @@
 #include <jtag/jtag.h>
 #include <helper/time_support.h>
 
-#define SMI_READ_REG(a) (_SMI_READ_REG(a))
-#define _SMI_READ_REG(a)                       \
-{                                                                      \
+#define SMI_READ_REG(a)                                \
+({                                                                     \
        int _ret;                                               \
        uint32_t _value;                                \
                                                                        \
@@ -51,7 +50,7 @@
        if (_ret != ERROR_OK)                   \
                return _ret;                            \
        _value;                                                 \
-}
+})
 
 #define SMI_WRITE_REG(a, v)                    \
 {                                                                      \