Open barracuda156 opened 2 years ago
Source code leading to the error:
template <bool isURL>
std::uint32_t base64DecodeSWARMainLoop(
const char*& f, const char* l, char*& o) noexcept {
static_assert(
folly::kIsLittleEndian, "Big endian requires a redesigned table");
std::uint32_t errorAccumulator = 0;
while (l - f > 4) {
std::uint32_t r = //
kBase64SwarDecodeTable<isURL>[0][atAsU8(f, 0)] |
kBase64SwarDecodeTable<isURL>[1][atAsU8(f, 1)] |
kBase64SwarDecodeTable<isURL>[2][atAsU8(f, 2)] |
kBase64SwarDecodeTable<isURL>[3][atAsU8(f, 3)];
errorAccumulator |= r;
std::memcpy(o, &r, sizeof(r));
f += 4;
o += 3;
}
return errorAccumulator;
}
Looks like Big Endian have been broken forever with folly
: https://bytemeta.vip/repo/facebook/folly/issues/1445
Now Big-endian is broken by https://github.com/facebook/folly/commit/1110819343455b5f698e8d01a951b9da1b3b9c5a commit.
Another error on 10.6.8 Rosetta with
gcc12
: