#define WV_DEFINE_VALUE_TYPE( type_name, underlying_type ) \
struct type_name##_tag{}; \
typedef ::wv::whole_value<underlying_type, type_name##_tag> type_name;
#define WV_DEFINE_VALUE_TYPE( type_name, underlying_type ) \
typedef ::wv::whole_value<underlying_type, struct type_name##_tag> type_name;
change
to
See: