{"action":"opened","issue":{"url":"https://api.github.com/repos/boostorg/spirit/issues/408","repository_url":"https://api.github.com/repos/boostorg/spirit","labels_url":"https://api.github.com/repos/boostorg/spirit/issues/408/labels{/name}","comments_url":"https://api.github.com/repos/boostorg/spirit/issues/408/comments","events_url":"https://api.github.com/repos/boostorg/spirit/issues/408/events","html_url":"https://github.com/boostorg/spirit/issues/408","id":370173406,"node_id":"MDU6SXNzdWUzNzAxNzM0MDY=","number":408,"title":"Sequence operator after list operator doesn't collapse to a vector","user":{"login":"syyyr","id":17759291,"node_id":"MDQ6VXNlcjE3NzU5Mjkx","avatar_url":"https://avatars0.githubusercontent.com/u/17759291?v=4","gravatar_id":"","url":"https://api.github.com/users/syyyr","html_url":"https://github.com/syyyr","followers_url":"https://api.github.com/users/syyyr/followers","following_url":"https://api.github.com/users/syyyr/following{/other_user}","gists_url":"https://api.github.com/users/syyyr/gists{/gist_id}","starred_url":"https://api.github.com/users/syyyr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/syyyr/subscriptions","organizations_url":"https://api.github.com/users/syyyr/orgs","repos_url":"https://api.github.com/users/syyyr/repos","events_url":"https://api.github.com/users/syyyr/events{/privacy}","received_events_url":"https://api.github.com/users/syyyr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-10-15T13:51:27Z","updated_at":"2018-10-15T13:51:27Z","closed_at":null,"author_association":"NONE","body":"Hello, I'm trying to make a rule, that parses integers separated by a slash, and the last one is separated by an asterisk:\r\n```\r\n#include <boost/spirit/home/x3.hpp>\r\n#include <boost/fusion/adapted/struct/adapt_struct.hpp>\r\nnamespace x3 = boost::spirit::x3;\r\n\r\nstruct ints_ {\r\n    std::vector<int> m_vector;\r\n};\r\nBOOST_FUSION_ADAPT_STRUCT(ints_, m_vector)\r\n\r\nstruct ints_class;\r\nx3::rule<ints_class, ints_> const ints = \"ints\";\r\nauto const ints_def = x3::int_ % '/' >> '*' >> x3::int_;\r\nBOOST_SPIRIT_DEFINE(ints)\r\n\r\nint main(int argc, char* argv[])\r\n{\r\n    ints_ foo;\r\n    std::string to_parse = \"3432/432/4*4343\";\r\n    auto to_parse_iter = to_parse.begin();\r\n    x3::parse(to_parse_iter, to_parse.end(), ints, foo);\r\n}\r\n```\r\nUnfortunately, the code doesn't compile with this error:\r\n```\r\n/usr/include/boost/spirit/home/x3/operator/detail/sequence.hpp:150:25: error: static assertion failed: Size of the passed attribute is less than expected.\r\n             actual_size >= expected_size\r\n```\r\n According to the Compound Attribute Rules section in the documentation, the attribute of the ```ints``` rule should be ```vector<int>```:\r\n```\r\na: A, b: B --> (a % b): vector<A>\r\na: vector<A>, b: A --> (a >> b): vector<A>\r\n```\r\nIf I add another ```int``` field to the struct, it successfully compiles, but I would like to have all the integers in the same vector. Is there a solution to this? Am I not doing something right?"}}
{"actor":{"display_login":"syyyr"}}