Skip to content

Commit e32749d

Browse files
committed
Revert "[Basic] Handle multiline strings in abortWithPrettyStackTraceMessage"
This reverts commit d46aec9.
1 parent b74d671 commit e32749d

File tree

2 files changed

+5
-28
lines changed

2 files changed

+5
-28
lines changed

include/swift/Basic/PrettyStackTrace.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,15 +51,13 @@ class PrettyStackTraceSwiftVersion : public llvm::PrettyStackTraceEntry {
5151
};
5252

5353
/// Aborts the program, printing a given message to a PrettyStackTrace frame
54-
/// before exiting. This should be preferred over manually logging to stderr and
55-
/// aborting since that won't be picked up by the crash reporter.
54+
/// before exiting.
5655
[[noreturn]]
5756
void abortWithPrettyStackTraceMessage(
5857
llvm::function_ref<void(llvm::raw_ostream &)> message);
5958

6059
/// Aborts the program, printing a given message to a PrettyStackTrace frame
61-
/// before exiting. This should be preferred over manually logging to stderr and
62-
/// aborting since that won't be picked up by the crash reporter.
60+
/// before exiting.
6361
[[noreturn]]
6462
void abortWithPrettyStackTraceMessage(llvm::StringRef message);
6563

lib/Basic/PrettyStackTrace.cpp

Lines changed: 3 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -40,38 +40,17 @@ void PrettyStackTraceSwiftVersion::print(llvm::raw_ostream &out) const {
4040
out << version::getSwiftFullVersion() << '\n';
4141
}
4242

43-
namespace {
44-
/// Similar to PrettyStackTraceString, but formats multi-line strings for
45-
/// the stack trace.
46-
class PrettyStackTraceMultilineString : public llvm::PrettyStackTraceEntry {
47-
StringRef Str;
48-
49-
public:
50-
PrettyStackTraceMultilineString(StringRef str) : Str(str) {}
51-
void print(raw_ostream &OS) const override {
52-
// For each line, add a leading character and indentation to better match
53-
// the formatting of the stack trace.
54-
for (auto c : Str.rtrim('\n')) {
55-
OS << c;
56-
if (c == '\n')
57-
OS << "| \t";
58-
}
59-
OS << '\n';
60-
}
61-
};
62-
} // end anonymous namespace
63-
6443
void swift::abortWithPrettyStackTraceMessage(
6544
llvm::function_ref<void(llvm::raw_ostream &)> message) {
6645
llvm::SmallString<0> errorStr;
6746
llvm::raw_svector_ostream out(errorStr);
6847
message(out);
69-
70-
PrettyStackTraceMultilineString trace(errorStr);
48+
llvm::PrettyStackTraceString trace(errorStr.c_str());
7149
abort();
7250
}
7351

7452
void swift::abortWithPrettyStackTraceMessage(StringRef message) {
75-
PrettyStackTraceMultilineString trace(message);
53+
auto messageStr = message.str();
54+
llvm::PrettyStackTraceString trace(messageStr.c_str());
7655
abort();
7756
}

0 commit comments

Comments
 (0)