diff --git a/include/mapnik/json/generic_json_grammar_x3_def.hpp b/include/mapnik/json/generic_json_grammar_x3_def.hpp index 5408a2220..98ed4674e 100644 --- a/include/mapnik/json/generic_json_grammar_x3_def.hpp +++ b/include/mapnik/json/generic_json_grammar_x3_def.hpp @@ -73,7 +73,7 @@ namespace { auto const& json_string = mapnik::json::unicode_string_grammar(); } // exported rules // start -generic_json_grammar_type const value("JSON Value"); +generic_json_grammar_type const value __attribute__((init_priority(102))) ("JSON Value"); generic_json_key_value_type const key_value("JSON Object element"); // rules x3::rule const object("JSON Object"); diff --git a/include/mapnik/json/geojson_grammar_x3_def.hpp b/include/mapnik/json/geojson_grammar_x3_def.hpp index 545826e7b..407e87fdc 100644 --- a/include/mapnik/json/geojson_grammar_x3_def.hpp +++ b/include/mapnik/json/geojson_grammar_x3_def.hpp @@ -89,8 +89,8 @@ struct geometry_type_ : x3::symbols // exported rules // start -geojson_grammar_type const value("JSON Value"); -key_value_type const key_value("JSON key/value"); +geojson_grammar_type const value __attribute__((init_priority(106))) ("JSON Value"); +key_value_type const key_value __attribute__((init_priority(107))) ("JSON key/value"); // rules x3::rule const object("JSON Object"); x3::rule const array("JSON Array"); diff --git a/include/mapnik/json/positions_grammar_x3_def.hpp b/include/mapnik/json/positions_grammar_x3_def.hpp index 6f6b96500..2dec62fec 100644 --- a/include/mapnik/json/positions_grammar_x3_def.hpp +++ b/include/mapnik/json/positions_grammar_x3_def.hpp @@ -42,7 +42,7 @@ auto assign_helper = [](auto const& ctx) } // anonymous ns // start rule -positions_grammar_type const positions("Positions"); +positions_grammar_type const positions __attribute__((init_priority(103))) ("Positions"); // rules x3::rule const point("Position"); x3::rule const ring("Ring"); diff --git a/include/mapnik/json/topojson_grammar_x3_def.hpp b/include/mapnik/json/topojson_grammar_x3_def.hpp index 7200fdbd3..f1e0481a8 100644 --- a/include/mapnik/json/topojson_grammar_x3_def.hpp +++ b/include/mapnik/json/topojson_grammar_x3_def.hpp @@ -304,7 +304,7 @@ struct topojson_geometry_type_ : x3::symbols } topojson_geometry_type; // start rule -topojson_grammar_type const topology = "Topology"; +topojson_grammar_type const topology __attribute__((init_priority(104))) ("Topology"); // rules x3::rule const transform = "Transform"; x3::rule const bbox = "Bounding Box"; @@ -373,7 +373,7 @@ auto const geometry_tuple_def = | properties[assign_properties] | - (omit[json_string] > lit(':') > omit[json_value])) % lit(',') + omit[json_string] > lit(':') > omit[json_value]) % lit(',') ; auto const geometry_def = lit("{") > geometry_tuple[create_geometry] > lit("}"); diff --git a/include/mapnik/json/unicode_string_grammar_x3_def.hpp b/include/mapnik/json/unicode_string_grammar_x3_def.hpp index 039e2d624..3234c73fa 100644 --- a/include/mapnik/json/unicode_string_grammar_x3_def.hpp +++ b/include/mapnik/json/unicode_string_grammar_x3_def.hpp @@ -109,7 +109,7 @@ x3::uint_parser const hex4 {}; x3::uint_parser const hex8 {}; // start rule -unicode_string_grammar_type const unicode_string("Unicode String"); +unicode_string_grammar_type const unicode_string __attribute__((init_priority(101))) ("Unicode String"); // rules x3::rule const double_quoted("Double-quoted string"); x3::rule const escaped("Escaped Character");