Skip to content

Commit b301a59

Browse files
Merge pull request #1881 from Z3Prover/revert-1880-c++17
Revert "Made Z3 compile for C++17 with MSVC"
2 parents 4916de8 + 6704a4b commit b301a59

File tree

4 files changed

+6
-10
lines changed

4 files changed

+6
-10
lines changed

src/muz/base/dl_rule_set.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -696,10 +696,9 @@ namespace datalog {
696696
}
697697
strats_index++;
698698
}
699-
using namespace std::placeholders;
700699
//we have managed to topologicaly order all the components
701700
SASSERT(std::find_if(m_components.begin(), m_components.end(),
702-
std::bind(std::not_equal_to<item_set*>(), (item_set*)0, _1)) == m_components.end());
701+
std::bind1st(std::not_equal_to<item_set*>(), (item_set*)0)) == m_components.end());
703702

704703
//reverse the strats array, so that the only the later components would depend on earlier ones
705704
std::reverse(m_strats.begin(), m_strats.end());

src/muz/spacer/spacer_context.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ Module Name:
2828
#undef max
2929
#endif
3030
#include <queue>
31-
#include <functional>
3231
#include "util/scoped_ptr_vector.h"
3332
#include "muz/spacer/spacer_manager.h"
3433
#include "muz/spacer/spacer_prop_solver.h"
@@ -190,7 +189,7 @@ class lemma {
190189
}
191190
};
192191

193-
struct lemma_lt_proc : public std::function<bool(lemma*, lemma *)> {
192+
struct lemma_lt_proc : public std::binary_function<lemma*, lemma *, bool> {
194193
bool operator() (lemma *a, lemma *b) {
195194
return (a->level () < b->level ()) ||
196195
(a->level () == b->level () &&
@@ -728,11 +727,11 @@ inline std::ostream &operator<<(std::ostream &out, pob const &p) {
728727
return p.display(out);
729728
}
730729

731-
struct pob_lt_proc : public std::function<bool(const pob*, const pob*)> {
730+
struct pob_lt_proc : public std::binary_function<const pob*, const pob*, bool> {
732731
bool operator() (const pob *pn1, const pob *pn2) const;
733732
};
734733

735-
struct pob_gt_proc : public std::function<bool(const pob*, const pob*)> {
734+
struct pob_gt_proc : public std::binary_function<const pob*, const pob*, bool> {
736735
bool operator() (const pob *n1, const pob *n2) const {
737736
return pob_lt_proc()(n2, n1);
738737
}

src/muz/spacer/spacer_quant_generalizer.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ Revision History:
1919
2020
--*/
2121

22-
#include <functional>
2322

2423
#include "muz/spacer/spacer_context.h"
2524
#include "muz/spacer/spacer_generalizers.h"
@@ -37,7 +36,7 @@ Revision History:
3736
using namespace spacer;
3837

3938
namespace {
40-
struct index_lt_proc : public std::function<bool(app*, app*)> {
39+
struct index_lt_proc : public std::binary_function<app*, app *, bool> {
4140
arith_util m_arith;
4241
index_lt_proc(ast_manager &m) : m_arith(m) {}
4342
bool operator() (app *a, app *b) {

src/qe/qe_vartest.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,9 @@ Revision History:
2121

2222
#include "ast/ast.h"
2323
#include "util/uint_set.h"
24-
#include <functional>
2524

2625
// TBD: move under qe namespace
27-
class is_variable_proc : public std::function<bool(expr*)> {
26+
class is_variable_proc : public std::unary_function<expr*,bool> {
2827
public:
2928
virtual bool operator()(const expr* e) const = 0;
3029
};

0 commit comments

Comments
 (0)