about summary refs log tree commit diff homepage
path: root/lib/Solver/AssignmentValidatingSolver.cpp
diff options
context:
space:
mode:
authorDaniel Schemmel <daniel@schemmel.net>2023-10-29 16:00:02 +0000
committerMartinNowack <2443641+MartinNowack@users.noreply.github.com>2024-01-30 21:40:32 +0000
commit3ca81c2dc3881aec0bbf94646c73a148d706c76d (patch)
tree27852ee64e2148b2225f7d4dfd4e33b244be4cfd /lib/Solver/AssignmentValidatingSolver.cpp
parentf813c88c8cb868fc9c0be78fbf92a94d72ac02b0 (diff)
downloadklee-3ca81c2dc3881aec0bbf94646c73a148d706c76d.tar.gz
Change `GetConstraintLog` to work with `std::string`s instead of `char*`s
Diffstat (limited to 'lib/Solver/AssignmentValidatingSolver.cpp')
-rw-r--r--lib/Solver/AssignmentValidatingSolver.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/Solver/AssignmentValidatingSolver.cpp b/lib/Solver/AssignmentValidatingSolver.cpp
index d90cf6b2..891abfb2 100644
--- a/lib/Solver/AssignmentValidatingSolver.cpp
+++ b/lib/Solver/AssignmentValidatingSolver.cpp
@@ -35,7 +35,7 @@ public:
                             std::vector<std::vector<unsigned char> > &values,
                             bool &hasSolution);
   SolverRunStatus getOperationStatusCode();
-  char *getConstraintLog(const Query &);
+  std::string getConstraintLog(const Query &) override;
   void setCoreSolverTimeout(time::Span timeout);
 };
 
@@ -132,9 +132,8 @@ void AssignmentValidatingSolver::dumpAssignmentQuery(
   Query augmentedQuery(constraints, query.expr);
 
   // Ask the solver for the log for this query.
-  char *logText = solver->getConstraintLog(augmentedQuery);
-  llvm::errs() << "Query with assignment as constraints:\n" << logText << "\n";
-  free(logText);
+  llvm::errs() << "Query with assignment as constraints:\n"
+               << solver->getConstraintLog(augmentedQuery) << "\n";
 }
 
 SolverImpl::SolverRunStatus
@@ -142,7 +141,7 @@ AssignmentValidatingSolver::getOperationStatusCode() {
   return solver->impl->getOperationStatusCode();
 }
 
-char *AssignmentValidatingSolver::getConstraintLog(const Query &query) {
+std::string AssignmentValidatingSolver::getConstraintLog(const Query &query) {
   return solver->impl->getConstraintLog(query);
 }