From adbc0b5287bf36893cdcae2440d48b3cb3489e38 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Thu, 20 Nov 2003 18:23:14 +0000 Subject: [PATCH] Spew symbolic types! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10110 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Linker/LinkModules.cpp | 11 ++++++++--- lib/Transforms/Utils/Linker.cpp | 11 ++++++++--- lib/VMCore/Linker.cpp | 11 ++++++++--- 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/lib/Linker/LinkModules.cpp b/lib/Linker/LinkModules.cpp index 4bc78a4cde3..bdbdb7d4ccc 100644 --- a/lib/Linker/LinkModules.cpp +++ b/lib/Linker/LinkModules.cpp @@ -17,11 +17,12 @@ //===----------------------------------------------------------------------===// #include "llvm/Transforms/Utils/Linker.h" +#include "llvm/Constants.h" +#include "llvm/DerivedTypes.h" #include "llvm/Module.h" #include "llvm/SymbolTable.h" -#include "llvm/DerivedTypes.h" #include "llvm/iOther.h" -#include "llvm/Constants.h" +#include "llvm/Assembly/Writer.h" namespace llvm { @@ -239,7 +240,11 @@ static bool LinkTypes(Module *Dest, const Module *Src, std::string *Err) { const Type *T1 = cast(VM.find(Name)->second); const Type *T2 = cast(DestST->lookup(Type::TypeTy, Name)); std::cerr << "WARNING: Type conflict between types named '" << Name - << "'.\n Src='" << *T1 << "'.\n Dest='" << *T2 << "'\n"; + << "'.\n Src='"; + WriteTypeSymbolic(std::cerr, T1, Src); + std::cerr << "'.\n Dest='"; + WriteTypeSymbolic(std::cerr, T2, Dest); + std::cerr << "'\n"; // Remove the symbol name from the destination. DelayedTypesToResolve.pop_back(); diff --git a/lib/Transforms/Utils/Linker.cpp b/lib/Transforms/Utils/Linker.cpp index 4bc78a4cde3..bdbdb7d4ccc 100644 --- a/lib/Transforms/Utils/Linker.cpp +++ b/lib/Transforms/Utils/Linker.cpp @@ -17,11 +17,12 @@ //===----------------------------------------------------------------------===// #include "llvm/Transforms/Utils/Linker.h" +#include "llvm/Constants.h" +#include "llvm/DerivedTypes.h" #include "llvm/Module.h" #include "llvm/SymbolTable.h" -#include "llvm/DerivedTypes.h" #include "llvm/iOther.h" -#include "llvm/Constants.h" +#include "llvm/Assembly/Writer.h" namespace llvm { @@ -239,7 +240,11 @@ static bool LinkTypes(Module *Dest, const Module *Src, std::string *Err) { const Type *T1 = cast(VM.find(Name)->second); const Type *T2 = cast(DestST->lookup(Type::TypeTy, Name)); std::cerr << "WARNING: Type conflict between types named '" << Name - << "'.\n Src='" << *T1 << "'.\n Dest='" << *T2 << "'\n"; + << "'.\n Src='"; + WriteTypeSymbolic(std::cerr, T1, Src); + std::cerr << "'.\n Dest='"; + WriteTypeSymbolic(std::cerr, T2, Dest); + std::cerr << "'\n"; // Remove the symbol name from the destination. DelayedTypesToResolve.pop_back(); diff --git a/lib/VMCore/Linker.cpp b/lib/VMCore/Linker.cpp index 4bc78a4cde3..bdbdb7d4ccc 100644 --- a/lib/VMCore/Linker.cpp +++ b/lib/VMCore/Linker.cpp @@ -17,11 +17,12 @@ //===----------------------------------------------------------------------===// #include "llvm/Transforms/Utils/Linker.h" +#include "llvm/Constants.h" +#include "llvm/DerivedTypes.h" #include "llvm/Module.h" #include "llvm/SymbolTable.h" -#include "llvm/DerivedTypes.h" #include "llvm/iOther.h" -#include "llvm/Constants.h" +#include "llvm/Assembly/Writer.h" namespace llvm { @@ -239,7 +240,11 @@ static bool LinkTypes(Module *Dest, const Module *Src, std::string *Err) { const Type *T1 = cast(VM.find(Name)->second); const Type *T2 = cast(DestST->lookup(Type::TypeTy, Name)); std::cerr << "WARNING: Type conflict between types named '" << Name - << "'.\n Src='" << *T1 << "'.\n Dest='" << *T2 << "'\n"; + << "'.\n Src='"; + WriteTypeSymbolic(std::cerr, T1, Src); + std::cerr << "'.\n Dest='"; + WriteTypeSymbolic(std::cerr, T2, Dest); + std::cerr << "'\n"; // Remove the symbol name from the destination. DelayedTypesToResolve.pop_back(); -- 2.34.1