diff options
author | Derek Schuff <dschuff@chromium.org> | 2021-10-01 12:54:53 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-01 19:54:53 +0000 |
commit | 1a44da0fef430ff46c39cd56b0545089b9a573d1 (patch) | |
tree | 1a1c9b89a35c8a708a817fd41601aeba48774271 /src | |
parent | 65bcde2c30e82047a892332b95b114bc86f89614 (diff) | |
download | binaryen-1a44da0fef430ff46c39cd56b0545089b9a573d1.tar.gz binaryen-1a44da0fef430ff46c39cd56b0545089b9a573d1.tar.bz2 binaryen-1a44da0fef430ff46c39cd56b0545089b9a573d1.zip |
Remove use of std::iterator (#4199)
It's deprecated in C++17
Diffstat (limited to 'src')
-rw-r--r-- | src/wasm-type.h | 13 | ||||
-rw-r--r-- | src/wasm/CMakeLists.txt | 5 |
2 files changed, 12 insertions, 6 deletions
diff --git a/src/wasm-type.h b/src/wasm-type.h index 48dbaf61b..542d26263 100644 --- a/src/wasm-type.h +++ b/src/wasm-type.h @@ -263,11 +263,14 @@ public: std::string toString() const; - struct Iterator : std::iterator<std::random_access_iterator_tag, - Type, - long, - Type*, - const Type&> { + struct Iterator { + // Iterator traits + using iterator_category = std::random_access_iterator_tag; + using value_type = Type; + using difference_type = long; + using pointer = const Type*; + using reference = const Type&; + const Type* parent; size_t index; Iterator(const Type* parent, size_t index) : parent(parent), index(index) {} diff --git a/src/wasm/CMakeLists.txt b/src/wasm/CMakeLists.txt index 5547e0741..20fc2e9fb 100644 --- a/src/wasm/CMakeLists.txt +++ b/src/wasm/CMakeLists.txt @@ -6,7 +6,6 @@ set(wasm_SOURCES wasm-binary.cpp wasm-debug.cpp wasm-emscripten.cpp - wasm-debug.cpp wasm-interpreter.cpp wasm-io.cpp wasm-s-parser.cpp @@ -15,4 +14,8 @@ set(wasm_SOURCES wasm-validator.cpp ${wasm_HEADERS} ) +# wasm-debug.cpp includes LLVM header using std::iterator (deprecated in C++17) +if (NOT MSVC) + set_source_files_properties(wasm-debug.cpp PROPERTIES COMPILE_FLAGS -Wno-deprecated-declarations) +endif() add_library(wasm OBJECT ${wasm_SOURCES}) |