[llvm-nm] Use WithColor for error reporting

Use helpers from Support/WithError.h to print errors.

llvm-svn: 346624
This commit is contained in:
Jonas Devlieghere 2018-11-11 22:12:21 +00:00
parent e787efd929
commit ba17b96bed
2 changed files with 9 additions and 8 deletions

View File

@ -1,3 +1,3 @@
@ RUN: llvm-nm -print-size -arch armv7m %p/Inputs/print-size.macho-armv7m 2>&1 | FileCheck %s @ RUN: llvm-nm -print-size -arch armv7m %p/Inputs/print-size.macho-armv7m 2>&1 | FileCheck %s
@ CHECK: warning sizes with -print-size for Mach-O files are always zero. @ CHECK: warning: sizes with -print-size for Mach-O files are always zero.

View File

@ -38,6 +38,7 @@
#include "llvm/Support/Program.h" #include "llvm/Support/Program.h"
#include "llvm/Support/Signals.h" #include "llvm/Support/Signals.h"
#include "llvm/Support/TargetSelect.h" #include "llvm/Support/TargetSelect.h"
#include "llvm/Support/WithColor.h"
#include "llvm/Support/raw_ostream.h" #include "llvm/Support/raw_ostream.h"
#include <vector> #include <vector>
@ -196,7 +197,7 @@ std::string ToolName;
static void error(Twine Message, Twine Path = Twine()) { static void error(Twine Message, Twine Path = Twine()) {
HadError = true; HadError = true;
errs() << ToolName << ": " << Path << ": " << Message << ".\n"; WithColor::error(errs(), ToolName) << Path << ": " << Message << ".\n";
} }
static bool error(std::error_code EC, Twine Path = Twine()) { static bool error(std::error_code EC, Twine Path = Twine()) {
@ -213,7 +214,7 @@ static bool error(std::error_code EC, Twine Path = Twine()) {
static void error(llvm::Error E, StringRef FileName, const Archive::Child &C, static void error(llvm::Error E, StringRef FileName, const Archive::Child &C,
StringRef ArchitectureName = StringRef()) { StringRef ArchitectureName = StringRef()) {
HadError = true; HadError = true;
errs() << ToolName << ": " << FileName; WithColor::error(errs(), ToolName) << FileName;
Expected<StringRef> NameOrErr = C.getName(); Expected<StringRef> NameOrErr = C.getName();
// TODO: if we have a error getting the name then it would be nice to print // TODO: if we have a error getting the name then it would be nice to print
@ -242,7 +243,7 @@ static void error(llvm::Error E, StringRef FileName, const Archive::Child &C,
static void error(llvm::Error E, StringRef FileName, static void error(llvm::Error E, StringRef FileName,
StringRef ArchitectureName = StringRef()) { StringRef ArchitectureName = StringRef()) {
HadError = true; HadError = true;
errs() << ToolName << ": " << FileName; WithColor::error(errs(), ToolName) << FileName;
if (!ArchitectureName.empty()) if (!ArchitectureName.empty())
errs() << " (for architecture " << ArchitectureName << ") "; errs() << " (for architecture " << ArchitectureName << ") ";
@ -1775,8 +1776,8 @@ static void dumpSymbolNamesFromFile(std::string &Filename) {
} }
if (SymbolicFile *O = dyn_cast<SymbolicFile>(&*ChildOrErr.get())) { if (SymbolicFile *O = dyn_cast<SymbolicFile>(&*ChildOrErr.get())) {
if (!MachOPrintSizeWarning && PrintSize && isa<MachOObjectFile>(O)) { if (!MachOPrintSizeWarning && PrintSize && isa<MachOObjectFile>(O)) {
errs() << ToolName << ": warning sizes with -print-size for Mach-O " WithColor::warning(errs(), ToolName)
"files are always zero.\n"; << "sizes with -print-size for Mach-O files are always zero.\n";
MachOPrintSizeWarning = true; MachOPrintSizeWarning = true;
} }
if (!checkMachOAndArchFlags(O, Filename)) if (!checkMachOAndArchFlags(O, Filename))
@ -2016,8 +2017,8 @@ static void dumpSymbolNamesFromFile(std::string &Filename) {
} }
if (SymbolicFile *O = dyn_cast<SymbolicFile>(&Bin)) { if (SymbolicFile *O = dyn_cast<SymbolicFile>(&Bin)) {
if (!MachOPrintSizeWarning && PrintSize && isa<MachOObjectFile>(O)) { if (!MachOPrintSizeWarning && PrintSize && isa<MachOObjectFile>(O)) {
errs() << ToolName << ": warning sizes with -print-size for Mach-O files " WithColor::warning(errs(), ToolName)
"are always zero.\n"; << "sizes with -print-size for Mach-O files are always zero.\n";
MachOPrintSizeWarning = true; MachOPrintSizeWarning = true;
} }
if (!checkMachOAndArchFlags(O, Filename)) if (!checkMachOAndArchFlags(O, Filename))