From: Dmitry V. Levin Date: Sun, 2 Jul 2017 00:11:31 +0000 (+0000) Subject: Introduce generic STRINGIFY and STRINGIFY_VAL macros X-Git-Tag: v4.18~10 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eaa2f6e06d2b49e9418f4bb5568f106d2cc2c592;p=strace Introduce generic STRINGIFY and STRINGIFY_VAL macros * macros.h (STRINGIFY, STRINGIFY_VAL): New macros. * mpers_type.h: Include "macros.h". [IN_MPERS] (STRINGIFY): Remove. * tests/sockname.c (TEST_SYSCALL_STR__, TEST_SYSCALL_STR_): Remove. (TEST_SYSCALL_STR): Use STRINGIFY_VAL. Co-authored-by: Victor Krapivensky --- diff --git a/macros.h b/macros.h index 218b0572..2913d60c 100644 --- a/macros.h +++ b/macros.h @@ -32,4 +32,7 @@ #define ARRAY_SIZE(a_) (sizeof(a_) / sizeof((a_)[0]) + MUST_BE_ARRAY(a_)) +#define STRINGIFY(...) #__VA_ARGS__ +#define STRINGIFY_VAL(...) STRINGIFY(__VA_ARGS__) + #endif /* !STRACE_MACROS_H */ diff --git a/mpers_type.h b/mpers_type.h index ecb1efa8..64201c78 100644 --- a/mpers_type.h +++ b/mpers_type.h @@ -30,8 +30,9 @@ #ifndef STRACE_MPERS_TYPE_H #define STRACE_MPERS_TYPE_H +#include "macros.h" + #ifdef IN_MPERS -# define STRINGIFY(a) #a # define DEF_MPERS_TYPE(args) STRINGIFY(args.h) # ifdef MPERS_IS_m32 # define MPERS_PREFIX m32_ diff --git a/tests/sockname.c b/tests/sockname.c index 9bab8eda..58726712 100644 --- a/tests/sockname.c +++ b/tests/sockname.c @@ -42,9 +42,7 @@ # error TEST_SYSCALL_NAME must be defined #endif -#define TEST_SYSCALL_STR__(a) #a -#define TEST_SYSCALL_STR_(a) TEST_SYSCALL_STR__(a) -#define TEST_SYSCALL_STR TEST_SYSCALL_STR_(TEST_SYSCALL_NAME) +#define TEST_SYSCALL_STR STRINGIFY_VAL(TEST_SYSCALL_NAME) #define TEST_SOCKET TEST_SYSCALL_STR ".socket" #ifdef TEST_SYSCALL_PREPARE