From ba6efeae9025a24aa7af82aba668b865b05a17a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Remigiusz=20Ko=C5=82=C5=82=C4=85taj?= Date: Sun, 22 Jul 2018 10:47:02 +0200 Subject: [PATCH] Backporting "undefined reference to peg::enabler" fix to all versions older than 5.0.0; Fix tests to compile with clang 3.5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Remigiusz Kołłątaj --- peglib.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/peglib.h b/peglib.h index c94f1cc..19c3bdb 100644 --- a/peglib.h +++ b/peglib.h @@ -41,8 +41,8 @@ namespace peg { -#if __clang__ == 1 && __clang_major__ == 5 && __clang_minor__ == 0 && __clang_patchlevel__ == 0 -static void* enabler = nullptr; // workaround for Clang 5.0.0 +#if __clang__ == 1 && __clang_major__ <= 5 +static void* enabler = nullptr; // workaround for Clang version <= 5.0.0 #else extern void* enabler; #endif @@ -2076,7 +2076,7 @@ private: } }; - g["Primary"] = [&](const SemanticValues& sv, any& dt) { + g["Primary"] = [&](const SemanticValues& sv, any& dt) -> std::shared_ptr { Data& data = *dt.get(); switch (sv.choice()) {