llvm/lib/IR/DiagnosticPrinter.cpp
Manman Ren 2666b15908 Report a warning when dropping outdated debug info metadata.
Use DiagnosticInfo to emit the warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199346 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-16 01:51:12 +00:00

108 lines
2.6 KiB
C++

//===- llvm/Support/DiagnosticInfo.cpp - Diagnostic Definitions -*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file defines the a diagnostic printer relying on raw_ostream.
//
//===----------------------------------------------------------------------===//
#include "llvm/ADT/Twine.h"
#include "llvm/IR/DiagnosticPrinter.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/raw_ostream.h"
using namespace llvm;
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(char C) {
Stream << C;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned char C) {
Stream << C;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(signed char C) {
Stream << C;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(StringRef Str) {
Stream << Str;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const char *Str) {
Stream << Str;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(
const std::string &Str) {
Stream << Str;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned long N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(long N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(
unsigned long long N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(long long N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const void *P) {
Stream << P;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(unsigned int N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(int N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(double N) {
Stream << N;
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Twine &Str) {
Str.print(Stream);
return *this;
}
// IR related types.
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Value &V) {
Stream << V.getName();
return *this;
}
DiagnosticPrinter &DiagnosticPrinterRawOStream::operator<<(const Module &M) {
Stream << M.getModuleIdentifier();
return *this;
}