message: BasicTypes: fix COMPILE_TIME_ASSERT to not warn on good case
  The implementation of COMPILE_TIME_ASSERT has been changed, following
  the suggestions in this article:
  This version of COMPILE_TIME_ASSERT produces no warnings when satisified
  on many compilers.
diff: @@ -71,7 +71,9 @@ typedef unsigned int NATIVE_UINT_TYPE; //!< native unsigned integer type declara
  // compile-time assert
  #define COMPILE_TIME_ASSERT( condition, name )\
  - typedef char assert_failed_ ## name [ (condition) ? 1 : -1 ];
  + do { \
  + enum { assert_failed_ ## name = 1/(condition) }; \
  + } while(0)
  /*----------------------------------------------------------------------------*/
  typedef int8_t I8; //!< 8-bit signed integer
  