The declaration made below is not valid when -std=c++11 is not used (it causes the same compile-time errors when using July Refresh):
template<typename U> class IsSigned;
template<typename T, bool IsSigned = IsSigned<T>::value>
So far, the workaround was to use a different variable declared in the template (e.g. bool IsTSigned = IsSigned<T>).