mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
This may help us reproduce a failing build when all we have is a build log, and will become much more important in batch mode when we /really/ need to know what ended up in what batch. For now, this doesn't include /output/ filelists, because David's about to mess with that code anyway to make things better around supplementary outputs in batch mode. There is one weirdness there, though, which is that ArgsToFrontendInputsConverter peeks at the outputs to see whether we're doing single-threaded or multi-threaded WMO.
36 lines
1.3 KiB
C++
36 lines
1.3 KiB
C++
//===--- PrettyStackTrace.cpp - Generic PrettyStackTraceEntries -----------===//
|
|
//
|
|
// This source file is part of the Swift.org open source project
|
|
//
|
|
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
|
|
// Licensed under Apache License v2.0 with Runtime Library Exception
|
|
//
|
|
// See https://swift.org/LICENSE.txt for license information
|
|
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file implements several PrettyStackTraceEntries that probably
|
|
// ought to be in LLVM.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#include "swift/Basic/PrettyStackTrace.h"
|
|
#include "swift/Basic/QuotedString.h"
|
|
#include "llvm/Support/MemoryBuffer.h"
|
|
#include "llvm/Support/raw_ostream.h"
|
|
|
|
using namespace swift;
|
|
|
|
void PrettyStackTraceStringAction::print(llvm::raw_ostream &out) const {
|
|
out << "While " << Action << ' ' << QuotedString(TheString) << '\n';
|
|
}
|
|
|
|
void PrettyStackTraceFileContents::print(llvm::raw_ostream &out) const {
|
|
out << "Contents of " << Buffer.getBufferIdentifier() << ":\n---\n"
|
|
<< Buffer.getBuffer();
|
|
if (!Buffer.getBuffer().endswith("\n"))
|
|
out << '\n';
|
|
out << "---\n";
|
|
}
|