Closed edwintorok closed 15 years ago
The plan is to convert everything over to raw_ostream. Sorry, we won't be adding new operator<<'s for std::ostream unless needed in mainline.
Converting DOUT from Support/Debug.h to raw_ostream is fine with me.
Can I just convert llvm:getErrorOutputStream to return errs() instead of cerr? What is the equivalent of cnoout with raw_ostream?
The plan is to convert everything over to raw_ostream. Sorry, we won't be adding new operator<<'s for std::ostream unless needed in mainline.
Extended Description
This code doesn't compile anymore:
ConstantRange Bounds = VR->get(V); DOUT << "Bounds: " << Bounds;
I think the problem is that DOUT is not a raw_ostream. I've commented out that code for now.
/home/edwin/llvm-svn/llvm/include/llvm/Support/Streams.h: In member function ‘llvm::BaseStream& llvm::BaseStream::operator<<(const Ty&) [with Ty = llvm::ConstantRange, StreamTy = std::basic_ostream<char, std::char_traits >]’:
Solver.cpp:440: instantiated from here
/home/edwin/llvm-svn/llvm/include/llvm/Support/Streams.h:57: error: no match for ‘operator<<’ in ‘((llvm::BaseStream<std::basic_ostream<char, std::char_traits > > )this)->llvm::BaseStream<std::basic_ostream<char, std::char_traits > >::Stream << Thing’
/usr/include/c++/4.3/ostream:112: note: candidates are: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_ostream<_CharT, _Traits>& ()(std::basic_ostream<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:121: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_ios<_CharT, _Traits>& ( )(std::basic_ios<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:131: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::ios_base& ()(std::ios_base&)) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:169: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:173: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long unsigned int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:177: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(bool) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/bits/ostream.tcc:97: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(short int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:184: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(short unsigned int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/bits/ostream.tcc:111: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:195: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(unsigned int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:204: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long long int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:208: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long long unsigned int) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:213: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(double) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:217: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(float) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:225: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(long double) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/ostream:229: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(const void ) [with _CharT = char, _Traits = std::char_traits]
/usr/include/c++/4.3/bits/ostream.tcc:125: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(std::basic_streambuf<_CharT, _Traits>*) [with _CharT = char, _Traits = std::char_traits]
/home/edwin/llvm-svn/llvm/include/llvm/Value.h:247: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::Value&)
/home/edwin/llvm-svn/llvm/include/llvm/Value.h:251: note: llvm::raw_ostream& llvm::operator<<(llvm::raw_ostream&, const llvm::Value&)
/home/edwin/llvm-svn/llvm/include/llvm/System/Path.h:708: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::sys::Path&)
/home/edwin/llvm-svn/llvm/include/llvm/System/Path.h:710: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::sys::PathWithStatus&)
/home/edwin/llvm-svn/llvm/include/llvm/Pass.h:205: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::Pass&)
/home/edwin/llvm-svn/llvm/include/llvm/Type.h:457: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::Type&)
/home/edwin/llvm-svn/llvm/include/llvm/Type.h:458: note: llvm::raw_ostream& llvm::operator<<(llvm::raw_ostream&, const llvm::Type&)
/home/edwin/llvm-svn/llvm/include/llvm/ADT/APInt.h:1386: note: llvm::raw_ostream& llvm::operator<<(llvm::raw_ostream&, const llvm::APInt&)
/home/edwin/llvm-svn/llvm/include/llvm/Analysis/ScalarEvolution.h:105: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::SCEV&)
/home/edwin/llvm-svn/llvm/include/llvm/Support/ConstantRange.h:188: note: llvm::raw_ostream& llvm::operator<<(llvm::raw_ostream&, const llvm::ConstantRange&)
Constraint.h:58: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::Relation&)
Constraint.h:134: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::Constraint&)
/home/edwin/llvm-svn/llvm/include/llvm/Analysis/AliasSetTracker.h:245: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::AliasSet&)
/home/edwin/llvm-svn/llvm/include/llvm/Analysis/AliasSetTracker.h:384: note: std::ostream& llvm::operator<<(std::ostream&, const llvm::AliasSetTracker&)