From 347795c5d2dbc2815d395e60a08ad3debca68102 Mon Sep 17 00:00:00 2001 From: Martin Nowack Date: Fri, 7 Feb 2014 21:04:22 +0100 Subject: Use SmallString and llvm::sys::path/fs API of LLVM 3.4 because Old Path API was removed --- lib/Core/StatsTracker.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'lib/Core') diff --git a/lib/Core/StatsTracker.cpp b/lib/Core/StatsTracker.cpp index 8161a52c..fde2eae8 100644 --- a/lib/Core/StatsTracker.cpp +++ b/lib/Core/StatsTracker.cpp @@ -55,6 +55,7 @@ #include #include +#include using namespace klee; using namespace llvm; @@ -182,12 +183,13 @@ StatsTracker::StatsTracker(Executor &_executor, std::string _objectFilename, updateMinDistToUncovered(_updateMinDistToUncovered) { KModule *km = executor.kmodule; - sys::Path module(objectFilename); #if LLVM_VERSION_CODE < LLVM_VERSION(3, 1) if (!sys::Path(objectFilename).isAbsolute()) { #else if (!sys::path::is_absolute(objectFilename)) { #endif + +#if LLVM_VERSION_CODE < LLVM_VERSION(3,4) sys::Path current = sys::Path::GetCurrentDirectory(); current.appendComponent(objectFilename); #if LLVM_VERSION_CODE < LLVM_VERSION(3, 1) @@ -196,6 +198,12 @@ StatsTracker::StatsTracker(Executor &_executor, std::string _objectFilename, if (sys::fs::exists(current.c_str())) #endif objectFilename = current.c_str(); +#else + SmallString<128> current(objectFilename); + if(sys::fs::make_absolute(current) && sys::fs::exists(current.str())) + objectFilename = current.c_str(); +#endif + } if (OutputIStats) -- cgit 1.4.1