diff --git a/src/json.hpp b/src/json.hpp index 84cf344b..87faa027 100644 --- a/src/json.hpp +++ b/src/json.hpp @@ -417,10 +417,10 @@ class basic_json inline basic_json(const number_integer_t& value) : m_type(value_t::number_integer), m_value(value) {} - + /// create an int number to support enum type (implicit) - inline basic_json(int int_enum) - : m_type(value_t::number_integer), m_value((NumberIntegerType)int_enum) + inline basic_json(const int int_enum) + : m_type(value_t::number_integer), m_value(static_cast(int_enum)) {} /// create an integer number (implicit) diff --git a/src/json.hpp.re2c b/src/json.hpp.re2c index 2326cae5..f456e90f 100644 --- a/src/json.hpp.re2c +++ b/src/json.hpp.re2c @@ -418,6 +418,11 @@ class basic_json : m_type(value_t::number_integer), m_value(value) {} + /// create an int number to support enum type (implicit) + inline basic_json(const int int_enum) + : m_type(value_t::number_integer), m_value(static_cast(int_enum)) + {} + /// create an integer number (implicit) template