From: Rui Ueyama Date: Wed, 16 Nov 2016 00:38:33 +0000 (+0000) Subject: Fix Modi and File count if there are more than 65535 modules/files. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d0211181aaf0bdc1748810ceb5d804836caee298;p=llvm Fix Modi and File count if there are more than 65535 modules/files. These numbers are intended to be capped at 65535, but `std::max(UINT16_MAX, N)` always returns N for any N because the expression is the same as `std::max((uint16_t)UINT16_MAX, (uint16_t)N)`. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@287060 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/DebugInfo/PDB/Raw/DbiStreamBuilder.cpp b/lib/DebugInfo/PDB/Raw/DbiStreamBuilder.cpp index 7001030f9a2..9989c4c6dd7 100644 --- a/lib/DebugInfo/PDB/Raw/DbiStreamBuilder.cpp +++ b/lib/DebugInfo/PDB/Raw/DbiStreamBuilder.cpp @@ -185,8 +185,8 @@ Error DbiStreamBuilder::generateFileInfoSubstream() { WritableStreamRef(FileInfoBuffer).keep_front(NamesOffset); StreamWriter MetadataWriter(MetadataBuffer); - uint16_t ModiCount = std::min(UINT16_MAX, ModuleInfos.size()); - uint16_t FileCount = std::min(UINT16_MAX, SourceFileNames.size()); + uint16_t ModiCount = std::min(UINT16_MAX, ModuleInfos.size()); + uint16_t FileCount = std::min(UINT16_MAX, SourceFileNames.size()); if (auto EC = MetadataWriter.writeInteger(ModiCount)) // NumModules return EC; if (auto EC = MetadataWriter.writeInteger(FileCount)) // NumSourceFiles