@@ -98,16 +98,13 @@ static void reportArchiveChildIssue(const object::Archive::Child &C, int Index,
98
98
}
99
99
100
100
// Return Name, and if Name is mangled, append "aka" and the demangled name.
101
- static std::string getPrintableName (StringRef Name) {
102
- std::string OutputName = " '" ;
103
- OutputName += Name;
104
- OutputName += " '" ;
101
+ static raw_ostream &printPrintableName (raw_ostream &OS, StringRef Name) {
102
+ OS << ' \' ' << Name << ' \' ' ;
103
+
105
104
std::string DemangledName (demangle (Name));
106
- if (Name != DemangledName) {
107
- OutputName += " aka " ;
108
- OutputName += DemangledName;
109
- }
110
- return OutputName;
105
+ if (Name != DemangledName)
106
+ OS << " aka " << DemangledName;
107
+ return OS;
111
108
}
112
109
113
110
static void reportNumberOfEntries (const TargetLibraryInfo &TLI,
@@ -133,8 +130,8 @@ static void dumpTLIEntries(const TargetLibraryInfo &TLI) {
133
130
bool IsAvailable = TLI.has (LF);
134
131
StringRef FuncName = TargetLibraryInfo::getStandardName (LF);
135
132
136
- outs () << (IsAvailable ? " " : " not " )
137
- << " available: " << getPrintableName ( FuncName) << ' \n ' ;
133
+ outs () << (IsAvailable ? " " : " not " ) << " available: " ;
134
+ printPrintableName ( outs (), FuncName) << ' \n ' ;
138
135
}
139
136
}
140
137
@@ -335,7 +332,9 @@ int main(int argc, char *argv[]) {
335
332
constexpr char YesNo[2 ][4 ] = {" no " , " yes" };
336
333
constexpr char Indicator[4 ][3 ] = {" !!" , " >>" , " <<" , " ==" };
337
334
outs () << Indicator[Which] << " TLI " << YesNo[TLIHas] << " SDK "
338
- << YesNo[SDKHas] << " : " << getPrintableName (TLIName) << ' \n ' ;
335
+ << YesNo[SDKHas] << " : " ;
336
+ printPrintableName (outs (), TLIName);
337
+ outs () << ' \n ' ;
339
338
}
340
339
}
341
340
0 commit comments