Skip to content

Commit b7c35d8

Browse files
committed
Make project compatible with PEGTL 3.1.0
1 parent c65d531 commit b7c35d8

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ endfunction()
6666

6767
find_package(Threads MODULE REQUIRED)
6868

69-
find_package(pegtl 3.1.1 QUIET CONFIG)
69+
find_package(pegtl 3.1.0 QUIET CONFIG)
7070
if(NOT pegtl_FOUND)
7171
# If a compatible version of PEGTL is not already installed, build and install it from the submodule directory.
7272
set(PEGTL_BUILD_TESTS OFF CACHE BOOL "Disable PEGTL tests")

include/graphqlservice/GraphQLTree.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,19 @@
1313
#include <tao/pegtl.hpp>
1414
#include <tao/pegtl/contrib/parse_tree.hpp>
1515

16+
// Temporarily workaround the tao::demangle namespace in 3.1.0. This was fixed in PEGTL commit
17+
// https://github.com/taocpp/PEGTL/commit/0cc3128e07734fb72e23e2eeee70b9f1fc13ca5f, which put this
18+
// in the correct namespace defined by TAO_PEGTL_NAMESPACE (tao::graphqlpeg) and should be included
19+
// in 3.1.1 or later. Once that version of PEGTL is released, this can be removed.
20+
#include <tao/pegtl/version.hpp>
21+
22+
#if (TAO_PEGTL_VERSION_MAJOR == 3) && (TAO_PEGTL_VERSION_MINOR == 1) \
23+
&& (TAO_PEGTL_VERSION_PATCH < 1)
24+
namespace tao::graphqlpeg {
25+
using ::tao::demangle;
26+
}
27+
#endif
28+
1629
#include <string>
1730
#include <string_view>
1831
#include <variant>

0 commit comments

Comments
 (0)