Try to fix build

Last change broke the build on some systems, hopefully this will fix
that.

Change-Id: Icb599e53bc0709d0341b8ad9578eeca06a8461db
diff --git a/src/path_parser.hpp b/src/path_parser.hpp
index 0334d12..6360912 100644
--- a/src/path_parser.hpp
+++ b/src/path_parser.hpp
@@ -128,11 +128,13 @@
 
 using AnyPath = boost::variant<schemaPath_, dataPath_>;
 
-struct PathParser : x3::parser<PathParser> {
+template <typename PathType>
+struct PathParser : x3::parser<PathParser<PathType>> {
+    using attribute_type = PathType;
     template <typename It, typename Ctx, typename RCtx, typename Attr>
     bool parse(It& begin, It end, Ctx const& ctx, RCtx& rctx, Attr& attr) const
     {
-        initializePath.parse(begin, end, ctx, rctx, attr);
+        initializePath.parse(begin, end, ctx, rctx, x3::unused);
         dataPath_ attrData;
 
         // absoluteStart has to be separate from the dataPath parser,
@@ -159,7 +161,7 @@
         }
         return res;
     }
-} const pathParser;
+};
 
 // Need to use these wrappers so that my PathParser class gets the proper
 // attribute. Otherwise, Spirit injects the attribute of the outer parser that
@@ -167,11 +169,9 @@
 // Example grammar: anyPath | module.
 // The PathParser class would get a boost::variant as the attribute, but I
 // don't want to deal with that, so I use these wrappers to ensure the
-// attribute I want (and let Spirit deal with boost::variant). Also, the
-// attribute gets passed to PathParser::parse via a template argument, so the
-// class doesn't even to need to be a template. Convenient!
-auto const anyPath = x3::rule<class anyPath_class, AnyPath>{"anyPath"} = pathParser;
-auto const dataPath = x3::rule<class dataPath_class, dataPath_>{"dataPath"} = pathParser;
+// attribute I want (and let Spirit deal with boost::variant).
+auto const anyPath = x3::rule<class anyPath_class, AnyPath>{"anyPath"} = PathParser<AnyPath>{};
+auto const dataPath = x3::rule<class dataPath_class, dataPath_>{"dataPath"} = PathParser<dataPath_>{};
 
 #if __clang__
 #pragma GCC diagnostic push