diff options
| -rw-r--r-- | include/osmocom/core/utils.h | 4 | ||||
| -rw-r--r-- | src/fsm.c | 12 | 
2 files changed, 9 insertions, 7 deletions
diff --git a/include/osmocom/core/utils.h b/include/osmocom/core/utils.h index 3c6fc98e..41bbc279 100644 --- a/include/osmocom/core/utils.h +++ b/include/osmocom/core/utils.h @@ -15,6 +15,10 @@  #define OSMO_MAX(a, b) ((a) >= (b) ? (a) : (b))  /*! \brief Return the minimum of two specified values */  #define OSMO_MIN(a, b) ((a) >= (b) ? (b) : (a)) +/*! \brief Stringify the contents of a macro, e.g. a port number */ +#define OSMO_STRINGIFY(x) #x +/*! \brief Make a value_string entry from an enum value name */ +#define OSMO_VALUE_STRING(x) { x, OSMO_STRINGIFY(x) }  #include <stdint.h> @@ -476,14 +476,12 @@ void _osmo_fsm_inst_term(struct osmo_fsm_inst *fi,  					file, line);  } -#define ENUM_VAL_TO_VALUE_STRING(X) { X, #X } -  const struct value_string osmo_fsm_term_cause_names[] = { -	ENUM_VAL_TO_VALUE_STRING(OSMO_FSM_TERM_PARENT), -	ENUM_VAL_TO_VALUE_STRING(OSMO_FSM_TERM_REQUEST), -	ENUM_VAL_TO_VALUE_STRING(OSMO_FSM_TERM_REGULAR), -	ENUM_VAL_TO_VALUE_STRING(OSMO_FSM_TERM_ERROR), -	ENUM_VAL_TO_VALUE_STRING(OSMO_FSM_TERM_TIMEOUT), +	OSMO_VALUE_STRING(OSMO_FSM_TERM_PARENT), +	OSMO_VALUE_STRING(OSMO_FSM_TERM_REQUEST), +	OSMO_VALUE_STRING(OSMO_FSM_TERM_REGULAR), +	OSMO_VALUE_STRING(OSMO_FSM_TERM_ERROR), +	OSMO_VALUE_STRING(OSMO_FSM_TERM_TIMEOUT),  	{ 0, NULL }  };  | 
