diff options
-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}) |