Code Quality: Fixed warnings on MSVC

This commit is contained in:
U-AMR\ptillet
2015-07-21 15:17:18 -07:00
parent 72ba75d4a7
commit 4fe525631c
2 changed files with 22 additions and 23 deletions

View File

@@ -22,9 +22,8 @@ endif()
#Compiler flags #Compiler flags
add_definitions(${BACKEND_DEFINES}) add_definitions(${BACKEND_DEFINES})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
if(CMAKE_COMPILER_IS_GNUCXX) if(CMAKE_COMPILER_IS_GNUCXX)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wextra -pedantic")
endif() endif()
#Binary to convert .cu files to const char * #Binary to convert .cu files to const char *

View File

@@ -15,17 +15,17 @@ void value_scalar::init(T const & s)
switch(dtype_) switch(dtype_)
{ {
// case BOOL_TYPE: values_.bool8 = s; break; // case BOOL_TYPE: values_.bool8 = s; break;
case CHAR_TYPE: values_.int8 = s; break; case CHAR_TYPE: values_.int8 = (int8_t)s; break;
case UCHAR_TYPE: values_.uint8 = s; break; case UCHAR_TYPE: values_.uint8 = (uint8_t)s; break;
case SHORT_TYPE: values_.int16 = s; break; case SHORT_TYPE: values_.int16 = (int16_t)s; break;
case USHORT_TYPE: values_.uint16 = s; break; case USHORT_TYPE: values_.uint16 = (uint16_t)s; break;
case INT_TYPE: values_.int32 = s; break; case INT_TYPE: values_.int32 = (int32_t)s; break;
case UINT_TYPE: values_.uint32 = s; break; case UINT_TYPE: values_.uint32 = (uint32_t)s; break;
case LONG_TYPE: values_.int64 = s; break; case LONG_TYPE: values_.int64 = (int64_t)s; break;
case ULONG_TYPE: values_.uint64 = s; break; case ULONG_TYPE: values_.uint64 = (uint64_t)s; break;
// case HALF_TYPE: values_.float16 = s; break; // case HALF_TYPE: values_.float16 = s; break;
case FLOAT_TYPE: values_.float32 = s; break; case FLOAT_TYPE: values_.float32 = (float)s; break;
case DOUBLE_TYPE: values_.float64 = s; break; case DOUBLE_TYPE: values_.float64 = (double)s; break;
default: throw unknown_datatype(dtype_); default: throw unknown_datatype(dtype_);
} }
} }
@@ -62,22 +62,22 @@ T value_scalar::cast() const
{ {
switch(dtype_) switch(dtype_)
{ {
case CHAR_TYPE: return values_.int8; case CHAR_TYPE: return static_cast<T>(values_.int8);
case UCHAR_TYPE: return values_.uint8; case UCHAR_TYPE: return static_cast<T>(values_.uint8);
case SHORT_TYPE: return values_.int16; case SHORT_TYPE: return static_cast<T>(values_.int16);
case USHORT_TYPE: return values_.uint16; case USHORT_TYPE: return static_cast<T>(values_.uint16);
case INT_TYPE: return values_.int32; case INT_TYPE: return static_cast<T>(values_.int32);
case UINT_TYPE: return values_.uint32; case UINT_TYPE: return static_cast<T>(values_.uint32);
case LONG_TYPE: return values_.int64; case LONG_TYPE: return static_cast<T>(values_.int64);
case ULONG_TYPE: return values_.uint64; case ULONG_TYPE: return static_cast<T>(values_.uint64);
case FLOAT_TYPE: return values_.float32; case FLOAT_TYPE: return static_cast<T>(values_.float32);
case DOUBLE_TYPE: return values_.float64; case DOUBLE_TYPE: return static_cast<T>(values_.float64);
default: throw unknown_datatype(dtype_); //unreachable default: throw unknown_datatype(dtype_); //unreachable
} }
} }
#define INSTANTIATE(type) value_scalar::operator type() const { return cast<type>(); } #define INSTANTIATE(type) value_scalar::operator type() const { return cast<type>(); }
INSTANTIATE(bool) //INSTANTIATE(bool)
INSTANTIATE(char) INSTANTIATE(char)
INSTANTIATE(unsigned char) INSTANTIATE(unsigned char)
INSTANTIATE(short) INSTANTIATE(short)