From 201df554ef415bd28977a4a9aaf1943ef7bd1a42 Mon Sep 17 00:00:00 2001 From: Cristian Cadar Date: Wed, 24 Oct 2012 12:49:37 +0000 Subject: Patch by Dan Liew: " Modified ConstantExpr::toString() to take an optional radix (base e.g. 2,10,16). This will be needed by the ExprSMTLIBPrinter that will soon be added." git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@166553 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/klee/Expr.h | 8 ++++++-- lib/Expr/Expr.cpp | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/include/klee/Expr.h b/include/klee/Expr.h index 41d980a6..5888d4d6 100644 --- a/include/klee/Expr.h +++ b/include/klee/Expr.h @@ -341,8 +341,12 @@ public: return value.getLimitedValue(Limit); } - /// toString - Return the constant value as a decimal string. - void toString(std::string &Res) const; + /// toString - Return the constant value as a string + /// \param Res specifies the string for the result to be placed in + /// \param radix specifies the base (e.g. 2,10,16). The default is base 10 + void toString(std::string &Res, unsigned radix=10) const; + + int compareContents(const Expr &b) const { const ConstantExpr &cb = static_cast(b); diff --git a/lib/Expr/Expr.cpp b/lib/Expr/Expr.cpp index fa8525b6..630de164 100644 --- a/lib/Expr/Expr.cpp +++ b/lib/Expr/Expr.cpp @@ -347,8 +347,8 @@ void ConstantExpr::toMemory(void *address) { } } -void ConstantExpr::toString(std::string &Res) const { - Res = value.toString(10, false); +void ConstantExpr::toString(std::string &Res, unsigned radix) const { + Res = value.toString(radix, false); } ref ConstantExpr::Concat(const ref &RHS) { -- cgit 1.4.1