tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit c04972af0ab8bdbcc0dc6282effa0dedcef73a6a
parent cfacf6f690a59adbd8de17a29e89ad80141f1e85
Author: serge-sans-paille <sguelton@mozilla.com>
Date:   Tue, 14 Oct 2025 07:48:53 +0000

Bug 1993979 - Remove unused inclusion of mozilla/TextUtils.h r=emilio

Also remove obsolete non-constexpr constraint on
AsciiAlphanumericToNumber now that gcc minimal supported version is
compatible.

Differential Revision: https://phabricator.services.mozilla.com/D268392

Diffstat:
Mdom/base/MimeType.h | 1-
Mdom/base/ResponsiveImageSelector.cpp | 1-
Mdom/base/ThirdPartyUtil.cpp | 1-
Mmfbt/TextUtils.h | 8++------
Mmfbt/tests/TestTextUtils.cpp | 564+++++++++++++++++++++++++++----------------------------------------------------
5 files changed, 194 insertions(+), 381 deletions(-)

diff --git a/dom/base/MimeType.h b/dom/base/MimeType.h @@ -7,7 +7,6 @@ #ifndef mozilla_dom_MimeType_h #define mozilla_dom_MimeType_h -#include "mozilla/TextUtils.h" #include "nsTArray.h" #include "nsTHashMap.h" diff --git a/dom/base/ResponsiveImageSelector.cpp b/dom/base/ResponsiveImageSelector.cpp @@ -9,7 +9,6 @@ #include "mozilla/PresShell.h" #include "mozilla/PresShellInlines.h" #include "mozilla/ServoStyleSetInlines.h" -#include "mozilla/TextUtils.h" #include "mozilla/dom/Document.h" #include "mozilla/dom/DocumentInlines.h" #include "nsCSSProps.h" diff --git a/dom/base/ThirdPartyUtil.cpp b/dom/base/ThirdPartyUtil.cpp @@ -19,7 +19,6 @@ #include "mozilla/NullPrincipal.h" #include "mozilla/StaticPtr.h" #include "mozilla/StorageAccess.h" -#include "mozilla/TextUtils.h" #include "mozilla/Unused.h" #include "mozilla/dom/BlobURLProtocolHandler.h" #include "mozilla/dom/BrowsingContext.h" diff --git a/mfbt/TextUtils.h b/mfbt/TextUtils.h @@ -269,7 +269,7 @@ constexpr bool IsAsciiAlphanumeric(Char aChar) { * (This function therefore works for decimal, hexadecimal, etc.). */ template <typename Char> -uint8_t AsciiAlphanumericToNumber(Char aChar) { +constexpr uint8_t AsciiAlphanumericToNumber(Char aChar) { using UnsignedChar = typename detail::MakeUnsignedChar<Char>::Type; auto uc = static_cast<UnsignedChar>(aChar); @@ -281,11 +281,7 @@ uint8_t AsciiAlphanumericToNumber(Char aChar) { return uc - 'A' + 10; } - // Ideally this function would be constexpr, but unfortunately gcc at least as - // of 6.4 forbids non-constexpr function calls in unevaluated constexpr - // function calls. See bug 1453456. So for now, just assert and leave the - // entire function non-constexpr. - MOZ_ASSERT('a' <= uc && uc <= 'z', + MOZ_ASSERT(IsAsciiLowercaseAlpha(aChar), "non-ASCII alphanumeric character can't be converted to number"); return uc - 'a' + 10; } diff --git a/mfbt/tests/TestTextUtils.cpp b/mfbt/tests/TestTextUtils.cpp @@ -577,385 +577,205 @@ static void TestIsAsciiAlphanumeric() { } static void TestAsciiAlphanumericToNumber() { - // When AsciiAlphanumericToNumber becomes constexpr, make sure to convert all - // these to just static_assert. - // char - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('0') == 0, "'0' converts to 0"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('1') == 1, "'1' converts to 1"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('2') == 2, "'2' converts to 2"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('3') == 3, "'3' converts to 3"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('4') == 4, "'4' converts to 4"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('5') == 5, "'5' converts to 5"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('6') == 6, "'6' converts to 6"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('7') == 7, "'7' converts to 7"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('8') == 8, "'8' converts to 8"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('9') == 9, "'9' converts to 9"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('A') == 10, - "'A' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('B') == 11, - "'B' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('C') == 12, - "'C' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('D') == 13, - "'D' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('E') == 14, - "'E' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('F') == 15, - "'F' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('G') == 16, - "'G' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('H') == 17, - "'H' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('I') == 18, - "'I' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('J') == 19, - "'J' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('K') == 20, - "'K' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('L') == 21, - "'L' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('M') == 22, - "'M' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('N') == 23, - "'N' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('O') == 24, - "'O' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('P') == 25, - "'P' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('Q') == 26, - "'Q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('R') == 27, - "'R' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('S') == 28, - "'S' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('T') == 29, - "'T' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('U') == 30, - "'U' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('V') == 31, - "'V' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('W') == 32, - "'W' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('X') == 33, - "'X' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('Y') == 34, - "'Y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('Z') == 35, - "'Z' converts to 35"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('a') == 10, - "'a' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('b') == 11, - "'b' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('c') == 12, - "'c' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('d') == 13, - "'d' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('e') == 14, - "'e' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('f') == 15, - "'f' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('g') == 16, - "'g' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('h') == 17, - "'h' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('i') == 18, - "'i' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('j') == 19, - "'j' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('k') == 20, - "'k' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('l') == 21, - "'l' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('m') == 22, - "'m' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('n') == 23, - "'n' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('o') == 24, - "'o' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('p') == 25, - "'p' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('q') == 26, - "'q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('r') == 27, - "'r' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('s') == 28, - "'s' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('t') == 29, - "'t' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('u') == 30, - "'u' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('v') == 31, - "'v' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('w') == 32, - "'w' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('x') == 33, - "'x' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('y') == 34, - "'y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber('z') == 35, - "'z' converts to 35"); + static_assert(AsciiAlphanumericToNumber('0') == 0, "'0' converts to 0"); + static_assert(AsciiAlphanumericToNumber('1') == 1, "'1' converts to 1"); + static_assert(AsciiAlphanumericToNumber('2') == 2, "'2' converts to 2"); + static_assert(AsciiAlphanumericToNumber('3') == 3, "'3' converts to 3"); + static_assert(AsciiAlphanumericToNumber('4') == 4, "'4' converts to 4"); + static_assert(AsciiAlphanumericToNumber('5') == 5, "'5' converts to 5"); + static_assert(AsciiAlphanumericToNumber('6') == 6, "'6' converts to 6"); + static_assert(AsciiAlphanumericToNumber('7') == 7, "'7' converts to 7"); + static_assert(AsciiAlphanumericToNumber('8') == 8, "'8' converts to 8"); + static_assert(AsciiAlphanumericToNumber('9') == 9, "'9' converts to 9"); + + static_assert(AsciiAlphanumericToNumber('A') == 10, "'A' converts to 10"); + static_assert(AsciiAlphanumericToNumber('B') == 11, "'B' converts to 11"); + static_assert(AsciiAlphanumericToNumber('C') == 12, "'C' converts to 12"); + static_assert(AsciiAlphanumericToNumber('D') == 13, "'D' converts to 13"); + static_assert(AsciiAlphanumericToNumber('E') == 14, "'E' converts to 14"); + static_assert(AsciiAlphanumericToNumber('F') == 15, "'F' converts to 15"); + static_assert(AsciiAlphanumericToNumber('G') == 16, "'G' converts to 16"); + static_assert(AsciiAlphanumericToNumber('H') == 17, "'H' converts to 17"); + static_assert(AsciiAlphanumericToNumber('I') == 18, "'I' converts to 18"); + static_assert(AsciiAlphanumericToNumber('J') == 19, "'J' converts to 19"); + static_assert(AsciiAlphanumericToNumber('K') == 20, "'K' converts to 20"); + static_assert(AsciiAlphanumericToNumber('L') == 21, "'L' converts to 21"); + static_assert(AsciiAlphanumericToNumber('M') == 22, "'M' converts to 22"); + static_assert(AsciiAlphanumericToNumber('N') == 23, "'N' converts to 23"); + static_assert(AsciiAlphanumericToNumber('O') == 24, "'O' converts to 24"); + static_assert(AsciiAlphanumericToNumber('P') == 25, "'P' converts to 25"); + static_assert(AsciiAlphanumericToNumber('Q') == 26, "'Q' converts to 26"); + static_assert(AsciiAlphanumericToNumber('R') == 27, "'R' converts to 27"); + static_assert(AsciiAlphanumericToNumber('S') == 28, "'S' converts to 28"); + static_assert(AsciiAlphanumericToNumber('T') == 29, "'T' converts to 29"); + static_assert(AsciiAlphanumericToNumber('U') == 30, "'U' converts to 30"); + static_assert(AsciiAlphanumericToNumber('V') == 31, "'V' converts to 31"); + static_assert(AsciiAlphanumericToNumber('W') == 32, "'W' converts to 32"); + static_assert(AsciiAlphanumericToNumber('X') == 33, "'X' converts to 33"); + static_assert(AsciiAlphanumericToNumber('Y') == 34, "'Y' converts to 34"); + static_assert(AsciiAlphanumericToNumber('Z') == 35, "'Z' converts to 35"); + + static_assert(AsciiAlphanumericToNumber('a') == 10, "'a' converts to 10"); + static_assert(AsciiAlphanumericToNumber('b') == 11, "'b' converts to 11"); + static_assert(AsciiAlphanumericToNumber('c') == 12, "'c' converts to 12"); + static_assert(AsciiAlphanumericToNumber('d') == 13, "'d' converts to 13"); + static_assert(AsciiAlphanumericToNumber('e') == 14, "'e' converts to 14"); + static_assert(AsciiAlphanumericToNumber('f') == 15, "'f' converts to 15"); + static_assert(AsciiAlphanumericToNumber('g') == 16, "'g' converts to 16"); + static_assert(AsciiAlphanumericToNumber('h') == 17, "'h' converts to 17"); + static_assert(AsciiAlphanumericToNumber('i') == 18, "'i' converts to 18"); + static_assert(AsciiAlphanumericToNumber('j') == 19, "'j' converts to 19"); + static_assert(AsciiAlphanumericToNumber('k') == 20, "'k' converts to 20"); + static_assert(AsciiAlphanumericToNumber('l') == 21, "'l' converts to 21"); + static_assert(AsciiAlphanumericToNumber('m') == 22, "'m' converts to 22"); + static_assert(AsciiAlphanumericToNumber('n') == 23, "'n' converts to 23"); + static_assert(AsciiAlphanumericToNumber('o') == 24, "'o' converts to 24"); + static_assert(AsciiAlphanumericToNumber('p') == 25, "'p' converts to 25"); + static_assert(AsciiAlphanumericToNumber('q') == 26, "'q' converts to 26"); + static_assert(AsciiAlphanumericToNumber('r') == 27, "'r' converts to 27"); + static_assert(AsciiAlphanumericToNumber('s') == 28, "'s' converts to 28"); + static_assert(AsciiAlphanumericToNumber('t') == 29, "'t' converts to 29"); + static_assert(AsciiAlphanumericToNumber('u') == 30, "'u' converts to 30"); + static_assert(AsciiAlphanumericToNumber('v') == 31, "'v' converts to 31"); + static_assert(AsciiAlphanumericToNumber('w') == 32, "'w' converts to 32"); + static_assert(AsciiAlphanumericToNumber('x') == 33, "'x' converts to 33"); + static_assert(AsciiAlphanumericToNumber('y') == 34, "'y' converts to 34"); + static_assert(AsciiAlphanumericToNumber('z') == 35, "'z' converts to 35"); // char16_t - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'0') == 0, - "u'0' converts to 0"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'1') == 1, - "u'1' converts to 1"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'2') == 2, - "u'2' converts to 2"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'3') == 3, - "u'3' converts to 3"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'4') == 4, - "u'4' converts to 4"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'5') == 5, - "u'5' converts to 5"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'6') == 6, - "u'6' converts to 6"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'7') == 7, - "u'7' converts to 7"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'8') == 8, - "u'8' converts to 8"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'9') == 9, - "u'9' converts to 9"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'A') == 10, - "u'A' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'B') == 11, - "u'B' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'C') == 12, - "u'C' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'D') == 13, - "u'D' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'E') == 14, - "u'E' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'F') == 15, - "u'F' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'G') == 16, - "u'G' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'H') == 17, - "u'H' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'I') == 18, - "u'I' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'J') == 19, - "u'J' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'K') == 20, - "u'K' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'L') == 21, - "u'L' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'M') == 22, - "u'M' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'N') == 23, - "u'N' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'O') == 24, - "u'O' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'P') == 25, - "u'P' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'Q') == 26, - "u'Q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'R') == 27, - "u'R' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'S') == 28, - "u'S' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'T') == 29, - "u'T' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'U') == 30, - "u'U' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'V') == 31, - "u'V' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'W') == 32, - "u'W' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'X') == 33, - "u'X' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'Y') == 34, - "u'Y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'Z') == 35, - "u'Z' converts to 35"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'a') == 10, - "u'a' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'b') == 11, - "u'b' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'c') == 12, - "u'c' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'd') == 13, - "u'd' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'e') == 14, - "u'e' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'f') == 15, - "u'f' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'g') == 16, - "u'g' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'h') == 17, - "u'h' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'i') == 18, - "u'i' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'j') == 19, - "u'j' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'k') == 20, - "u'k' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'l') == 21, - "u'l' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'm') == 22, - "u'm' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'n') == 23, - "u'n' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'o') == 24, - "u'o' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'p') == 25, - "u'p' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'q') == 26, - "u'q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'r') == 27, - "u'r' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u's') == 28, - "u's' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u't') == 29, - "u't' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'u') == 30, - "u'u' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'v') == 31, - "u'v' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'w') == 32, - "u'w' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'x') == 33, - "u'x' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'y') == 34, - "u'y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(u'z') == 35, - "u'z' converts to 35"); + static_assert(AsciiAlphanumericToNumber(u'0') == 0, "u'0' converts to 0"); + static_assert(AsciiAlphanumericToNumber(u'1') == 1, "u'1' converts to 1"); + static_assert(AsciiAlphanumericToNumber(u'2') == 2, "u'2' converts to 2"); + static_assert(AsciiAlphanumericToNumber(u'3') == 3, "u'3' converts to 3"); + static_assert(AsciiAlphanumericToNumber(u'4') == 4, "u'4' converts to 4"); + static_assert(AsciiAlphanumericToNumber(u'5') == 5, "u'5' converts to 5"); + static_assert(AsciiAlphanumericToNumber(u'6') == 6, "u'6' converts to 6"); + static_assert(AsciiAlphanumericToNumber(u'7') == 7, "u'7' converts to 7"); + static_assert(AsciiAlphanumericToNumber(u'8') == 8, "u'8' converts to 8"); + static_assert(AsciiAlphanumericToNumber(u'9') == 9, "u'9' converts to 9"); + + static_assert(AsciiAlphanumericToNumber(u'A') == 10, "u'A' converts to 10"); + static_assert(AsciiAlphanumericToNumber(u'B') == 11, "u'B' converts to 11"); + static_assert(AsciiAlphanumericToNumber(u'C') == 12, "u'C' converts to 12"); + static_assert(AsciiAlphanumericToNumber(u'D') == 13, "u'D' converts to 13"); + static_assert(AsciiAlphanumericToNumber(u'E') == 14, "u'E' converts to 14"); + static_assert(AsciiAlphanumericToNumber(u'F') == 15, "u'F' converts to 15"); + static_assert(AsciiAlphanumericToNumber(u'G') == 16, "u'G' converts to 16"); + static_assert(AsciiAlphanumericToNumber(u'H') == 17, "u'H' converts to 17"); + static_assert(AsciiAlphanumericToNumber(u'I') == 18, "u'I' converts to 18"); + static_assert(AsciiAlphanumericToNumber(u'J') == 19, "u'J' converts to 19"); + static_assert(AsciiAlphanumericToNumber(u'K') == 20, "u'K' converts to 20"); + static_assert(AsciiAlphanumericToNumber(u'L') == 21, "u'L' converts to 21"); + static_assert(AsciiAlphanumericToNumber(u'M') == 22, "u'M' converts to 22"); + static_assert(AsciiAlphanumericToNumber(u'N') == 23, "u'N' converts to 23"); + static_assert(AsciiAlphanumericToNumber(u'O') == 24, "u'O' converts to 24"); + static_assert(AsciiAlphanumericToNumber(u'P') == 25, "u'P' converts to 25"); + static_assert(AsciiAlphanumericToNumber(u'Q') == 26, "u'Q' converts to 26"); + static_assert(AsciiAlphanumericToNumber(u'R') == 27, "u'R' converts to 27"); + static_assert(AsciiAlphanumericToNumber(u'S') == 28, "u'S' converts to 28"); + static_assert(AsciiAlphanumericToNumber(u'T') == 29, "u'T' converts to 29"); + static_assert(AsciiAlphanumericToNumber(u'U') == 30, "u'U' converts to 30"); + static_assert(AsciiAlphanumericToNumber(u'V') == 31, "u'V' converts to 31"); + static_assert(AsciiAlphanumericToNumber(u'W') == 32, "u'W' converts to 32"); + static_assert(AsciiAlphanumericToNumber(u'X') == 33, "u'X' converts to 33"); + static_assert(AsciiAlphanumericToNumber(u'Y') == 34, "u'Y' converts to 34"); + static_assert(AsciiAlphanumericToNumber(u'Z') == 35, "u'Z' converts to 35"); + + static_assert(AsciiAlphanumericToNumber(u'a') == 10, "u'a' converts to 10"); + static_assert(AsciiAlphanumericToNumber(u'b') == 11, "u'b' converts to 11"); + static_assert(AsciiAlphanumericToNumber(u'c') == 12, "u'c' converts to 12"); + static_assert(AsciiAlphanumericToNumber(u'd') == 13, "u'd' converts to 13"); + static_assert(AsciiAlphanumericToNumber(u'e') == 14, "u'e' converts to 14"); + static_assert(AsciiAlphanumericToNumber(u'f') == 15, "u'f' converts to 15"); + static_assert(AsciiAlphanumericToNumber(u'g') == 16, "u'g' converts to 16"); + static_assert(AsciiAlphanumericToNumber(u'h') == 17, "u'h' converts to 17"); + static_assert(AsciiAlphanumericToNumber(u'i') == 18, "u'i' converts to 18"); + static_assert(AsciiAlphanumericToNumber(u'j') == 19, "u'j' converts to 19"); + static_assert(AsciiAlphanumericToNumber(u'k') == 20, "u'k' converts to 20"); + static_assert(AsciiAlphanumericToNumber(u'l') == 21, "u'l' converts to 21"); + static_assert(AsciiAlphanumericToNumber(u'm') == 22, "u'm' converts to 22"); + static_assert(AsciiAlphanumericToNumber(u'n') == 23, "u'n' converts to 23"); + static_assert(AsciiAlphanumericToNumber(u'o') == 24, "u'o' converts to 24"); + static_assert(AsciiAlphanumericToNumber(u'p') == 25, "u'p' converts to 25"); + static_assert(AsciiAlphanumericToNumber(u'q') == 26, "u'q' converts to 26"); + static_assert(AsciiAlphanumericToNumber(u'r') == 27, "u'r' converts to 27"); + static_assert(AsciiAlphanumericToNumber(u's') == 28, "u's' converts to 28"); + static_assert(AsciiAlphanumericToNumber(u't') == 29, "u't' converts to 29"); + static_assert(AsciiAlphanumericToNumber(u'u') == 30, "u'u' converts to 30"); + static_assert(AsciiAlphanumericToNumber(u'v') == 31, "u'v' converts to 31"); + static_assert(AsciiAlphanumericToNumber(u'w') == 32, "u'w' converts to 32"); + static_assert(AsciiAlphanumericToNumber(u'x') == 33, "u'x' converts to 33"); + static_assert(AsciiAlphanumericToNumber(u'y') == 34, "u'y' converts to 34"); + static_assert(AsciiAlphanumericToNumber(u'z') == 35, "u'z' converts to 35"); // char32_t - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'0') == 0, - "U'0' converts to 0"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'1') == 1, - "U'1' converts to 1"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'2') == 2, - "U'2' converts to 2"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'3') == 3, - "U'3' converts to 3"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'4') == 4, - "U'4' converts to 4"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'5') == 5, - "U'5' converts to 5"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'6') == 6, - "U'6' converts to 6"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'7') == 7, - "U'7' converts to 7"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'8') == 8, - "U'8' converts to 8"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'9') == 9, - "U'9' converts to 9"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'A') == 10, - "U'A' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'B') == 11, - "U'B' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'C') == 12, - "U'C' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'D') == 13, - "U'D' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'E') == 14, - "U'E' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'F') == 15, - "U'F' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'G') == 16, - "U'G' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'H') == 17, - "U'H' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'I') == 18, - "U'I' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'J') == 19, - "U'J' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'K') == 20, - "U'K' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'L') == 21, - "U'L' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'M') == 22, - "U'M' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'N') == 23, - "U'N' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'O') == 24, - "U'O' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'P') == 25, - "U'P' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'Q') == 26, - "U'Q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'R') == 27, - "U'R' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'S') == 28, - "U'S' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'T') == 29, - "U'T' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'U') == 30, - "U'U' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'V') == 31, - "U'V' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'W') == 32, - "U'W' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'X') == 33, - "U'X' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'Y') == 34, - "U'Y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'Z') == 35, - "U'Z' converts to 35"); - - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'a') == 10, - "U'a' converts to 10"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'b') == 11, - "U'b' converts to 11"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'c') == 12, - "U'c' converts to 12"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'd') == 13, - "U'd' converts to 13"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'e') == 14, - "U'e' converts to 14"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'f') == 15, - "U'f' converts to 15"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'g') == 16, - "U'g' converts to 16"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'h') == 17, - "U'h' converts to 17"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'i') == 18, - "U'i' converts to 18"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'j') == 19, - "U'j' converts to 19"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'k') == 20, - "U'k' converts to 20"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'l') == 21, - "U'l' converts to 21"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'm') == 22, - "U'm' converts to 22"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'n') == 23, - "U'n' converts to 23"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'o') == 24, - "U'o' converts to 24"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'p') == 25, - "U'p' converts to 25"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'q') == 26, - "U'q' converts to 26"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'r') == 27, - "U'r' converts to 27"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U's') == 28, - "U's' converts to 28"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U't') == 29, - "U't' converts to 29"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'u') == 30, - "U'u' converts to 30"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'v') == 31, - "U'v' converts to 31"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'w') == 32, - "U'w' converts to 32"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'x') == 33, - "U'x' converts to 33"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'y') == 34, - "U'y' converts to 34"); - MOZ_RELEASE_ASSERT(AsciiAlphanumericToNumber(U'z') == 35, - "U'z' converts to 35"); + static_assert(AsciiAlphanumericToNumber(U'0') == 0, "U'0' converts to 0"); + static_assert(AsciiAlphanumericToNumber(U'1') == 1, "U'1' converts to 1"); + static_assert(AsciiAlphanumericToNumber(U'2') == 2, "U'2' converts to 2"); + static_assert(AsciiAlphanumericToNumber(U'3') == 3, "U'3' converts to 3"); + static_assert(AsciiAlphanumericToNumber(U'4') == 4, "U'4' converts to 4"); + static_assert(AsciiAlphanumericToNumber(U'5') == 5, "U'5' converts to 5"); + static_assert(AsciiAlphanumericToNumber(U'6') == 6, "U'6' converts to 6"); + static_assert(AsciiAlphanumericToNumber(U'7') == 7, "U'7' converts to 7"); + static_assert(AsciiAlphanumericToNumber(U'8') == 8, "U'8' converts to 8"); + static_assert(AsciiAlphanumericToNumber(U'9') == 9, "U'9' converts to 9"); + + static_assert(AsciiAlphanumericToNumber(U'A') == 10, "U'A' converts to 10"); + static_assert(AsciiAlphanumericToNumber(U'B') == 11, "U'B' converts to 11"); + static_assert(AsciiAlphanumericToNumber(U'C') == 12, "U'C' converts to 12"); + static_assert(AsciiAlphanumericToNumber(U'D') == 13, "U'D' converts to 13"); + static_assert(AsciiAlphanumericToNumber(U'E') == 14, "U'E' converts to 14"); + static_assert(AsciiAlphanumericToNumber(U'F') == 15, "U'F' converts to 15"); + static_assert(AsciiAlphanumericToNumber(U'G') == 16, "U'G' converts to 16"); + static_assert(AsciiAlphanumericToNumber(U'H') == 17, "U'H' converts to 17"); + static_assert(AsciiAlphanumericToNumber(U'I') == 18, "U'I' converts to 18"); + static_assert(AsciiAlphanumericToNumber(U'J') == 19, "U'J' converts to 19"); + static_assert(AsciiAlphanumericToNumber(U'K') == 20, "U'K' converts to 20"); + static_assert(AsciiAlphanumericToNumber(U'L') == 21, "U'L' converts to 21"); + static_assert(AsciiAlphanumericToNumber(U'M') == 22, "U'M' converts to 22"); + static_assert(AsciiAlphanumericToNumber(U'N') == 23, "U'N' converts to 23"); + static_assert(AsciiAlphanumericToNumber(U'O') == 24, "U'O' converts to 24"); + static_assert(AsciiAlphanumericToNumber(U'P') == 25, "U'P' converts to 25"); + static_assert(AsciiAlphanumericToNumber(U'Q') == 26, "U'Q' converts to 26"); + static_assert(AsciiAlphanumericToNumber(U'R') == 27, "U'R' converts to 27"); + static_assert(AsciiAlphanumericToNumber(U'S') == 28, "U'S' converts to 28"); + static_assert(AsciiAlphanumericToNumber(U'T') == 29, "U'T' converts to 29"); + static_assert(AsciiAlphanumericToNumber(U'U') == 30, "U'U' converts to 30"); + static_assert(AsciiAlphanumericToNumber(U'V') == 31, "U'V' converts to 31"); + static_assert(AsciiAlphanumericToNumber(U'W') == 32, "U'W' converts to 32"); + static_assert(AsciiAlphanumericToNumber(U'X') == 33, "U'X' converts to 33"); + static_assert(AsciiAlphanumericToNumber(U'Y') == 34, "U'Y' converts to 34"); + static_assert(AsciiAlphanumericToNumber(U'Z') == 35, "U'Z' converts to 35"); + + static_assert(AsciiAlphanumericToNumber(U'a') == 10, "U'a' converts to 10"); + static_assert(AsciiAlphanumericToNumber(U'b') == 11, "U'b' converts to 11"); + static_assert(AsciiAlphanumericToNumber(U'c') == 12, "U'c' converts to 12"); + static_assert(AsciiAlphanumericToNumber(U'd') == 13, "U'd' converts to 13"); + static_assert(AsciiAlphanumericToNumber(U'e') == 14, "U'e' converts to 14"); + static_assert(AsciiAlphanumericToNumber(U'f') == 15, "U'f' converts to 15"); + static_assert(AsciiAlphanumericToNumber(U'g') == 16, "U'g' converts to 16"); + static_assert(AsciiAlphanumericToNumber(U'h') == 17, "U'h' converts to 17"); + static_assert(AsciiAlphanumericToNumber(U'i') == 18, "U'i' converts to 18"); + static_assert(AsciiAlphanumericToNumber(U'j') == 19, "U'j' converts to 19"); + static_assert(AsciiAlphanumericToNumber(U'k') == 20, "U'k' converts to 20"); + static_assert(AsciiAlphanumericToNumber(U'l') == 21, "U'l' converts to 21"); + static_assert(AsciiAlphanumericToNumber(U'm') == 22, "U'm' converts to 22"); + static_assert(AsciiAlphanumericToNumber(U'n') == 23, "U'n' converts to 23"); + static_assert(AsciiAlphanumericToNumber(U'o') == 24, "U'o' converts to 24"); + static_assert(AsciiAlphanumericToNumber(U'p') == 25, "U'p' converts to 25"); + static_assert(AsciiAlphanumericToNumber(U'q') == 26, "U'q' converts to 26"); + static_assert(AsciiAlphanumericToNumber(U'r') == 27, "U'r' converts to 27"); + static_assert(AsciiAlphanumericToNumber(U's') == 28, "U's' converts to 28"); + static_assert(AsciiAlphanumericToNumber(U't') == 29, "U't' converts to 29"); + static_assert(AsciiAlphanumericToNumber(U'u') == 30, "U'u' converts to 30"); + static_assert(AsciiAlphanumericToNumber(U'v') == 31, "U'v' converts to 31"); + static_assert(AsciiAlphanumericToNumber(U'w') == 32, "U'w' converts to 32"); + static_assert(AsciiAlphanumericToNumber(U'x') == 33, "U'x' converts to 33"); + static_assert(AsciiAlphanumericToNumber(U'y') == 34, "U'y' converts to 34"); + static_assert(AsciiAlphanumericToNumber(U'z') == 35, "U'z' converts to 35"); } static void TestIsAsciiDigit() {