Rule M5-0-3 (required, implementation, automated)

A cvalue expression shall not be implicitly converted to a different underlying type. See MISRA C++ 2008 [7]