
Le 07/06/14 01:30, Peter Dimov a écrit :
Vicente J. Botet Escriba wrote:
operator enum_type() const BOOST_NOEXCEPT { return get_native_value_(); }
I was expecting two implicit conversions: one from EnumType to enum_type and the other from enum_type to int. Am I missing something in C++98?
If enum_type is an enum type, its conversion to int is not user-defined and doesn't count.
Thanks Peter I don't know to what I was thinking :( An enum (scoped or not) is always implicitly convertible to its underlying type. Andrey, why this implicit conversion must be removed? What is wrong with it? - operator enum_type() const BOOST_NOEXCEPT { return get_native_value_(); } I have added the line you removed and all the test pass. Which case need to remove this implicit conversion? Best, Vicente