adjust to changes in various APIs from LLVM. We can't print

an APInt directly to an ostream now, so add some hacks.  It would
be better to switch all of the bugreport (and friends) stuff over
to raw_ostream.

llvm-svn: 55264
This commit is contained in:
Chris Lattner 2008-08-23 22:23:37 +00:00
parent 0c19df4871
commit a2e25e5e72
4 changed files with 14 additions and 9 deletions

View File

@ -707,7 +707,7 @@ public:
}
if (!EmitBitcode)
CodeGenModule->print(*Out);
*Out << *CodeGenModule.get();
else
llvm::WriteBitcodeToFile(CodeGenModule.get(), *Out);

View File

@ -21,6 +21,7 @@
#include "clang/AST/Expr.h"
#include "clang/Analysis/ProgramPoint.h"
#include "clang/Analysis/PathDiagnostic.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/ADT/DenseMap.h"
#include <sstream>
@ -537,7 +538,8 @@ void GRBugReporter::GeneratePathDiagnostic(PathDiagnostic& PD,
continue;
}
os << V;
llvm::raw_os_ostream OS(os);
OS << V;
}
os << ":' at line "

View File

@ -15,7 +15,7 @@
#include "clang/Analysis/PathSensitive/GRState.h"
#include "llvm/ADT/SmallSet.h"
#include "clang/Analysis/PathSensitive/GRTransferFuncs.h"
#include "llvm/Support/raw_ostream.h"
using namespace clang;
GRStateManager::~GRStateManager() {
@ -274,9 +274,11 @@ void GRState::print(std::ostream& Out, StoreManager& StoreMgr,
if (!CE.isEmpty()) {
Out << nl << sep << "'==' constraints:";
for (ConstEqTy::iterator I = CE.begin(), E = CE.end(); I!=E; ++I)
Out << nl << " $" << I.getKey()
<< " : " << *I.getData();
for (ConstEqTy::iterator I = CE.begin(), E = CE.end(); I!=E; ++I) {
Out << nl << " $" << I.getKey();
llvm::raw_os_ostream OS(Out);
OS << " : " << *I.getData();
}
}
// Print != constraints.

View File

@ -352,7 +352,7 @@ void NonLVal::print(std::ostream& Out) const {
switch (getSubKind()) {
case nonlval::ConcreteIntKind:
Out << cast<nonlval::ConcreteInt>(this)->getValue();
Out << cast<nonlval::ConcreteInt>(this)->getValue().getZExtValue();
if (cast<nonlval::ConcreteInt>(this)->getValue().isUnsigned())
Out << 'U';
@ -369,7 +369,7 @@ void NonLVal::print(std::ostream& Out) const {
Out << '$' << C.getConstraint().getSymbol() << ' ';
printOpcode(Out, C.getConstraint().getOpcode());
Out << ' ' << C.getConstraint().getInt();
Out << ' ' << C.getConstraint().getInt().getZExtValue();
if (C.getConstraint().getInt().isUnsigned())
Out << 'U';
@ -395,7 +395,8 @@ void LVal::print(std::ostream& Out) const {
switch (getSubKind()) {
case lval::ConcreteIntKind:
Out << cast<lval::ConcreteInt>(this)->getValue() << " (LVal)";
Out << cast<lval::ConcreteInt>(this)->getValue().getZExtValue()
<< " (LVal)";
break;
case lval::SymbolValKind: