diff options
Diffstat (limited to 'src/build.cc')
-rw-r--r-- | src/build.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/build.cc b/src/build.cc index 61ef0e8..5239637 100644 --- a/src/build.cc +++ b/src/build.cc @@ -441,7 +441,12 @@ bool Plan::CleanNode(DependencyScan* scan, Node* node, string* err) { vector<Node*>::iterator begin = (*oe)->inputs_.begin(), end = (*oe)->inputs_.end() - (*oe)->order_only_deps_; - if (find_if(begin, end, mem_fun(&Node::dirty)) == end) { +#if __cplusplus < 201703L +#define MEM_FN mem_fun +#else +#define MEM_FN mem_fn // mem_fun was removed in C++17. +#endif + if (find_if(begin, end, MEM_FN(&Node::dirty)) == end) { // Recompute most_recent_input. Node* most_recent_input = NULL; for (vector<Node*>::iterator i = begin; i != end; ++i) { |