Index: llvm/include/llvm/ADT/StringExtras.h =================================================================== --- llvm/include/llvm/ADT/StringExtras.h +++ llvm/include/llvm/ADT/StringExtras.h @@ -71,7 +71,7 @@ constexpr HexTable() { // Default initialize everything to invalid. for (int i = 0; i < 255; ++i) - LUT[i] = -1U; + LUT[i] = ~0U; // Initialize `0`-`9`. for (int i = 0; i < 10; ++i) LUT['0' + i] = i; @@ -88,7 +88,7 @@ inline bool isDigit(char C) { return C >= '0' && C <= '9'; } /// Checks if character \p C is a hexadecimal numeric character. -inline bool isHexDigit(char C) { return hexDigitValue(C) != -1U; } +inline bool isHexDigit(char C) { return hexDigitValue(C) != ~0U; } /// Checks if character \p C is a valid letter as classified by "C" locale. inline bool isAlpha(char C) { @@ -184,7 +184,7 @@ inline bool tryGetHexFromNibbles(char MSB, char LSB, uint8_t &Hex) { unsigned U1 = hexDigitValue(MSB); unsigned U2 = hexDigitValue(LSB); - if (U1 == -1U || U2 == -1U) + if (U1 == ~0U || U2 == ~0U) return false; Hex = static_cast((U1 << 4) | U2);