From: Marcos Pividori Date: Fri, 10 Feb 2017 18:44:14 +0000 (+0000) Subject: [libFuzzer] Use stoull instead of stol to ensure 64 bits. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fc4c8411e41a807dec53ea82c4545c9dbacd08dc;p=llvm [libFuzzer] Use stoull instead of stol to ensure 64 bits. Differential revision: https://reviews.llvm.org/D29831 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@294769 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Fuzzer/FuzzerTracePC.cpp b/lib/Fuzzer/FuzzerTracePC.cpp index 661ad23a8e3..d1f6441b6b2 100644 --- a/lib/Fuzzer/FuzzerTracePC.cpp +++ b/lib/Fuzzer/FuzzerTracePC.cpp @@ -138,7 +138,7 @@ void TracePC::PrintCoverage() { sizeof(ModulePathRaw), &OffsetRaw)) continue; std::string Module = ModulePathRaw; - uintptr_t FixedPC = std::stol(FixedPCStr, 0, 16); + uintptr_t FixedPC = std::stoull(FixedPCStr, 0, 16); uintptr_t PcOffset = reinterpret_cast(OffsetRaw); ModuleOffsets[Module] = FixedPC - PcOffset; CoveredPCsPerModule[Module].push_back(PcOffset); @@ -183,7 +183,7 @@ void TracePC::PrintCoverage() { if (PcOffsetEnd == std::string::npos) continue; S.resize(PcOffsetEnd); - uintptr_t PcOffset = std::stol(S, 0, 16); + uintptr_t PcOffset = std::stoull(S, 0, 16); if (!std::binary_search(CoveredOffsets.begin(), CoveredOffsets.end(), PcOffset)) { uintptr_t PC = ModuleOffset + PcOffset;