Merge "Build with C++20"
diff --git a/CMakeLists.txt b/CMakeLists.txt
index df78b3c..e61c6c6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,6 @@
project(netconf-cli LANGUAGES CXX)
cmake_minimum_required(VERSION 3.0)
-set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
@@ -56,6 +56,9 @@
find_package(docopt REQUIRED)
find_package(Boost REQUIRED COMPONENTS filesystem)
+# Fixes C++20 build
+# https://github.com/boostorg/asio/issues/312
+add_definitions(-DBOOST_ASIO_DISABLE_CONCEPTS)
find_library(REPLXX_LIBRARY NAMES replxx replxx-d REQUIRED)
find_path(REPLXX_PATH replxx.hxx)
if("${REPLXX_PATH}" STREQUAL REPLXX_PATH-NOTFOUND)
@@ -365,7 +368,7 @@
option(WITH_PYTHON_BINDINGS "Create and install Python3 bindings for accessing datastores" OFF)
if(WITH_PYTHON_BINDINGS)
- set(PYBIND11_CPP_STANDARD -std=c++17)
+ set(PYBIND11_CPP_STANDARD -std=c++20)
find_package(pybind11 REQUIRED)
pybind11_add_module(netconf_cli_py src/python_netconf.cpp)
target_link_libraries(netconf_cli_py PUBLIC netconfaccess)
diff --git a/tests/leaf_data_helpers.hpp b/tests/leaf_data_helpers.hpp
index 0a28ae3..91eb3f2 100644
--- a/tests/leaf_data_helpers.hpp
+++ b/tests/leaf_data_helpers.hpp
@@ -1,4 +1,5 @@
#include <algorithm>
+#include "ast_values.hpp"
#include "leaf_data_type.hpp"
yang::Enum createEnum(const std::initializer_list<const char*>& list)
{