Define an operator<< for APInt to be used with std::ostream.

This will allow it to be used in unittests that use gtest's
EXPECT_EQ.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74494 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2009-06-30 01:28:08 +00:00
parent 5001c21712
commit 670031666c
2 changed files with 8 additions and 0 deletions

View File

@ -1426,6 +1426,8 @@ inline raw_ostream &operator<<(raw_ostream &OS, const APInt &I) {
return OS;
}
std::ostream &operator<<(std::ostream &o, const APInt &I);
namespace APIntOps {
/// @brief Determine the smaller of two APInts considered to be signed.

View File

@ -2178,6 +2178,12 @@ void APInt::print(raw_ostream &OS, bool isSigned) const {
OS << S.c_str();
}
std::ostream &operator<<(std::ostream &o, const APInt &I) {
raw_os_ostream OS(o);
OS << I;
return o;
}
// This implements a variety of operations on a representation of
// arbitrary precision, two's-complement, bignum integer values.