about summary refs log tree commit diff homepage
path: root/lib/Solver
diff options
context:
space:
mode:
authorJulian Büning <julian.buening@rwth-aachen.de>2018-10-03 14:15:55 +0200
committerCristian Cadar <c.cadar@imperial.ac.uk>2018-10-23 18:57:53 +0300
commitd032742a963e7d8e83dad509dd1c95b4e1a34436 (patch)
tree9ac1a1ec81af7593c36a2f3a838cca7480225bcf /lib/Solver
parent9584781629cd0b04d150762c0b5ea1cced859368 (diff)
downloadklee-d032742a963e7d8e83dad509dd1c95b4e1a34436.tar.gz
use klee_open_output_file for uncompressed logs
Diffstat (limited to 'lib/Solver')
-rw-r--r--lib/Solver/QueryLoggingSolver.cpp21
-rw-r--r--lib/Solver/QueryLoggingSolver.h1
2 files changed, 6 insertions, 16 deletions
diff --git a/lib/Solver/QueryLoggingSolver.cpp b/lib/Solver/QueryLoggingSolver.cpp
index cf4966cd..7e4d8fe0 100644
--- a/lib/Solver/QueryLoggingSolver.cpp
+++ b/lib/Solver/QueryLoggingSolver.cpp
@@ -13,6 +13,7 @@
 #ifdef HAVE_ZLIB_H
 #include "klee/Internal/Support/CompressionStream.h"
 #include "klee/Internal/Support/ErrorHandling.h"
+#include "klee/Internal/Support/FileHandling.h"
 #endif
 
 #if LLVM_VERSION_CODE >= LLVM_VERSION(3, 5)
@@ -39,27 +40,17 @@ QueryLoggingSolver::QueryLoggingSolver(Solver *_solver, std::string path,
     : solver(_solver), os(0), BufferString(""), logBuffer(BufferString),
       queryCount(0), minQueryTimeToLog(queryTimeToLog), startTime(0.0f),
       lastQueryTime(0.0f), queryCommentSign(commentSign) {
+  std::string error;
 #ifdef HAVE_ZLIB_H
   if (!CreateCompressedQueryLog) {
 #endif
-#if LLVM_VERSION_CODE >= LLVM_VERSION(3, 6)
-    std::error_code ec;
-    os = new llvm::raw_fd_ostream(path.c_str(), ec,
-                                  llvm::sys::fs::OpenFlags::F_Text);
-    if (ec)
-      ErrorInfo = ec.message();
-#elif LLVM_VERSION_CODE >= LLVM_VERSION(3, 5)
-    os = new llvm::raw_fd_ostream(path.c_str(), ErrorInfo,
-                                  llvm::sys::fs::OpenFlags::F_Text);
-#else
-    os = new llvm::raw_fd_ostream(path.c_str(), ErrorInfo);
-#endif
+    os = klee_open_output_file(path, error);
 #ifdef HAVE_ZLIB_H
   } else {
-    os = new compressed_fd_ostream((path + ".gz").c_str(), ErrorInfo);
+    os = new compressed_fd_ostream((path + ".gz").c_str(), error);
   }
-  if (ErrorInfo != "") {
-    klee_error("Could not open file %s : %s", path.c_str(), ErrorInfo.c_str());
+  if (!error.empty()) {
+    klee_error("Could not open file %s : %s", path.c_str(), error.c_str());
   }
 #endif
   assert(0 != solver);
diff --git a/lib/Solver/QueryLoggingSolver.h b/lib/Solver/QueryLoggingSolver.h
index 7ac783d1..68edfe55 100644
--- a/lib/Solver/QueryLoggingSolver.h
+++ b/lib/Solver/QueryLoggingSolver.h
@@ -25,7 +25,6 @@ class QueryLoggingSolver : public SolverImpl {
 
 protected:
   Solver *solver;
-  std::string ErrorInfo;
   llvm::raw_ostream *os;
   // @brief Buffer used by logBuffer
   std::string BufferString;