summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-10-17 20:43:19 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-10-17 20:43:19 +0000
commit3446cf142eb3113679cbc11c3f63b133423d4c8b (patch)
treefc663fb4743ca420761c567a0a9eb347eb95c2f1 /utils
parent522b113a752a8e86932eebdc41ba07e058950e41 (diff)
downloadllvm-3446cf142eb3113679cbc11c3f63b133423d4c8b.tar.gz
llvm-3446cf142eb3113679cbc11c3f63b133423d4c8b.tar.bz2
llvm-3446cf142eb3113679cbc11c3f63b133423d4c8b.tar.xz
Use raw_ostream::write_escaped instead of EscapeString.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84356 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/TableGen/ClangDiagnosticsEmitter.cpp16
-rw-r--r--utils/TableGen/StringToOffsetTable.h9
2 files changed, 13 insertions, 12 deletions
diff --git a/utils/TableGen/ClangDiagnosticsEmitter.cpp b/utils/TableGen/ClangDiagnosticsEmitter.cpp
index c127afd770..6f1080eb5e 100644
--- a/utils/TableGen/ClangDiagnosticsEmitter.cpp
+++ b/utils/TableGen/ClangDiagnosticsEmitter.cpp
@@ -52,15 +52,12 @@ void ClangDiagsDefsEmitter::run(raw_ostream &OS) {
// Description string.
OS << ", \"";
- std::string S = R.getValueAsString("Text");
- EscapeString(S);
- OS << S << "\"";
+ OS.write_escaped(R.getValueAsString("Text")) << '"';
// Warning associated with the diagnostic.
if (DefInit *DI = dynamic_cast<DefInit*>(R.getValueInit("Group"))) {
- S = DI->getDef()->getValueAsString("GroupName");
- EscapeString(S);
- OS << ", \"" << S << "\"";
+ OS << ", \"";
+ OS.write_escaped(DI->getDef()->getValueAsString("GroupName")) << '"';
} else {
OS << ", 0";
}
@@ -151,11 +148,10 @@ void ClangDiagGroupsEmitter::run(raw_ostream &OS) {
OS << "\n#ifdef GET_DIAG_TABLE\n";
for (std::map<std::string, GroupInfo>::iterator
I = DiagsInGroup.begin(), E = DiagsInGroup.end(); I != E; ++I) {
- std::string S = I->first;
- EscapeString(S);
// Group option string.
- OS << " { \"" << S << "\","
- << std::string(MaxLen-I->first.size()+1, ' ');
+ OS << " { \"";
+ OS.write_escaped(I->first) << "\","
+ << std::string(MaxLen-I->first.size()+1, ' ');
// Diagnostics in the group.
if (I->second.DiagsInGroup.empty())
diff --git a/utils/TableGen/StringToOffsetTable.h b/utils/TableGen/StringToOffsetTable.h
index d9d7cf485e..ac9422c5d7 100644
--- a/utils/TableGen/StringToOffsetTable.h
+++ b/utils/TableGen/StringToOffsetTable.h
@@ -10,9 +10,10 @@
#ifndef TBLGEN_STRING_TO_OFFSET_TABLE_H
#define TBLGEN_STRING_TO_OFFSET_TABLE_H
+#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringMap.h"
-#include "llvm/Support/raw_ostream.h"
#include "llvm/ADT/StringExtras.h"
+#include "llvm/Support/raw_ostream.h"
namespace llvm {
@@ -38,9 +39,13 @@ public:
}
void EmitString(raw_ostream &O) {
+ // Escape the string.
+ SmallString<256> Str;
+ raw_svector_ostream(Str).write_escaped(AggregateString);
+ AggregateString = Str.str();
+
O << " \"";
unsigned CharsPrinted = 0;
- EscapeString(AggregateString);
for (unsigned i = 0, e = AggregateString.size(); i != e; ++i) {
if (CharsPrinted > 70) {
O << "\"\n \"";