/// this returns true to signify the error. The string is considered
/// erroneous if empty or if it overflows T.
template <typename T>
- LLVM_NODISCARD
- typename std::enable_if<std::numeric_limits<T>::is_signed, bool>::type
- getAsInteger(unsigned Radix, T &Result) const {
+ typename std::enable_if<std::numeric_limits<T>::is_signed, bool>::type
+ getAsInteger(unsigned Radix, T &Result) const {
long long LLVal;
if (getAsSignedInteger(*this, Radix, LLVal) ||
static_cast<T>(LLVal) != LLVal)
}
template <typename T>
- LLVM_NODISCARD
- typename std::enable_if<!std::numeric_limits<T>::is_signed, bool>::type
- getAsInteger(unsigned Radix, T &Result) const {
+ typename std::enable_if<!std::numeric_limits<T>::is_signed, bool>::type
+ getAsInteger(unsigned Radix, T &Result) const {
unsigned long long ULLVal;
// The additional cast to unsigned long long is required to avoid the
// Visual C++ warning C4805: '!=' : unsafe mix of type 'bool' and type