Fix various format specifier mismatches
authorHubert Tong <hubert.reinterpretcast@gmail.com>
Sun, 18 Oct 2020 15:41:52 +0000 (11:41 -0400)
committerHubert Tong <hubert.reinterpretcast@gmail.com>
Sun, 18 Oct 2020 16:39:15 +0000 (12:39 -0400)
Format specifiers of incorrect length are replaced with format specifier
macros from `<cinttypes>` matching the typedefs used to declare the type
of the value being printed.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D89637

llvm/lib/Object/COFFObjectFile.cpp
llvm/lib/ProfileData/GCOV.cpp
llvm/tools/llvm-readobj/ELFDumper.cpp

index cd10e67..c090259 100644 (file)
@@ -28,8 +28,8 @@
 #include "llvm/Support/MemoryBuffer.h"
 #include <algorithm>
 #include <cassert>
+#include <cinttypes>
 #include <cstddef>
-#include <cstdint>
 #include <cstring>
 #include <limits>
 #include <memory>
@@ -666,7 +666,7 @@ Error COFFObjectFile::initTLSDirectoryPtr() {
   if (DataEntry->Size != DirSize)
     return createStringError(
         object_error::parse_failed,
-        "TLS Directory size (%u) is not the expected size (%u).",
+        "TLS Directory size (%u) is not the expected size (%" PRIu64 ").",
         static_cast<uint32_t>(DataEntry->Size), DirSize);
 
   uintptr_t IntPtr = 0;
index 1d8aec0..c073525 100644 (file)
@@ -939,16 +939,16 @@ void Context::printBranchInfo(const GCOVBlock &Block, uint32_t &edgeIdx,
 }
 
 void Context::printSummary(const Summary &summary, raw_ostream &os) const {
-  os << format("Lines executed:%.2f%% of %u\n",
+  os << format("Lines executed:%.2f%% of %" PRIu64 "\n",
                double(summary.linesExec) * 100 / summary.lines, summary.lines);
   if (options.BranchInfo) {
     if (summary.branches == 0) {
       os << "No branches\n";
     } else {
-      os << format("Branches executed:%.2f%% of %u\n",
+      os << format("Branches executed:%.2f%% of %" PRIu64 "\n",
                    double(summary.branchesExec) * 100 / summary.branches,
                    summary.branches);
-      os << format("Taken at least once:%.2f%% of %u\n",
+      os << format("Taken at least once:%.2f%% of %" PRIu64 "\n",
                    double(summary.branchesTaken) * 100 / summary.branches,
                    summary.branches);
     }
index 8594d71..af94f14 100644 (file)
@@ -5560,7 +5560,7 @@ template <class ELFT> void GNUStyle<ELFT>::printDependentLibs() {
        << format_hex(Current.Offset, 1) << " contains " << SecEntries.size()
        << " entries:\n";
     for (NameOffset Entry : SecEntries)
-      OS << "  [" << format("%6tx", Entry.Offset) << "]  " << Entry.Name
+      OS << "  [" << format("%6" PRIx64, Entry.Offset) << "]  " << Entry.Name
          << "\n";
     OS << "\n";
     SecEntries.clear();