summaryrefslogtreecommitdiffstats
path: root/src/missing_deps.h
diff options
context:
space:
mode:
authorBruce Dawson <randomascii@users.noreply.github.com>2022-06-16 07:47:21 (GMT)
committerGitHub <noreply@github.com>2022-06-16 07:47:21 (GMT)
commita4c24a33c1ed32d9d51c8df763ec6ad574587d02 (patch)
tree1568dbd06c9a927018e23191581f57c771aff1aa /src/missing_deps.h
parent1d4034f0ac2b5cfb809b5ab983d47c3cb2c78415 (diff)
downloadNinja-a4c24a33c1ed32d9d51c8df763ec6ad574587d02.zip
Ninja-a4c24a33c1ed32d9d51c8df763ec6ad574587d02.tar.gz
Ninja-a4c24a33c1ed32d9d51c8df763ec6ad574587d02.tar.bz2
Build ninja with C++11 (#2089)
* Build ninja with C++11 In order to allow future use of std::chrono to make the stats code portable it is desirable to compile with C++11. Doing so also allows use of std::unordered_map, and reduces the number of #ifdefs in the ninja source code. Switching to C++11 requires modifying both CMakeLists.txt and configure.py, for MSVC and for other build systems. For MSVC the required change is adding /Zc:__cplusplus to tell the compiler to give a more accurate value for the __cplusplus macro. For other platforms the change is to add -std=c++11 or the CMake equivalent. This change makes some progress towards resolving issue #2004. * Delete code and instructions C++11 guarantees that string::data() gives null-terminated pointers, so explicitly adding a null terminator is no longer needed. The Google C++ Style Guide already recommends avoiding unnecessary use of C++14 and C++17 so repeating this in CONTRIBUTING.md is not critical. These changes both came from PR-review suggestions. * Only set cxx_std_11 if standard is 98 * Return to unconditional target_compile_features use After much discussion it sounds like using target_compile_features unconditionally is best.
Diffstat (limited to 'src/missing_deps.h')
-rw-r--r--src/missing_deps.h7
1 files changed, 0 insertions, 7 deletions
diff --git a/src/missing_deps.h b/src/missing_deps.h
index ae57074..7a615da 100644
--- a/src/missing_deps.h
+++ b/src/missing_deps.h
@@ -19,9 +19,7 @@
#include <set>
#include <string>
-#if __cplusplus >= 201103L
#include <unordered_map>
-#endif
struct DepsLog;
struct DiskInterface;
@@ -68,13 +66,8 @@ struct MissingDependencyScanner {
int missing_dep_path_count_;
private:
-#if __cplusplus >= 201103L
using InnerAdjacencyMap = std::unordered_map<Edge*, bool>;
using AdjacencyMap = std::unordered_map<Edge*, InnerAdjacencyMap>;
-#else
- typedef std::map<Edge*, bool> InnerAdjacencyMap;
- typedef std::map<Edge*, InnerAdjacencyMap> AdjacencyMap;
-#endif
AdjacencyMap adjacency_map_;
};