diff options
Diffstat (limited to 'llvm/lib/Analysis')
-rw-r--r-- | llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp b/llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp index bfb19762077..d4359a88870 100644 --- a/llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp +++ b/llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp @@ -110,18 +110,12 @@ template <> struct MappingTraits<DebugLoc> { static const bool flow = true; }; -template <> struct ScalarTraits<DiagnosticInfoOptimizationBase::Argument> { - static void output(const DiagnosticInfoOptimizationBase::Argument &Arg, - void *, llvm::raw_ostream &out) { - out << Arg.Key << ": " << Arg.Val; - } - - static StringRef input(StringRef scalar, void *, - DiagnosticInfoOptimizationBase::Argument &Arg) { - llvm_unreachable("input not yet implemented"); +// Implement this as a mapping for now to get proper quotation for the value. +template <> struct MappingTraits<DiagnosticInfoOptimizationBase::Argument> { + static void mapping(IO &io, DiagnosticInfoOptimizationBase::Argument &A) { + assert(io.outputting() && "input not yet implemented"); + io.mapRequired(A.Key.data(), A.Val); } - - static bool mustQuote(StringRef) { return false; } }; } // end namespace yaml |