qi::rule<> mix

Frank Bergemann <[email protected]> Wed, 3 Feb 2021 18:45:44 +0100
Newsgroups gmane.comp.parsers.spirit.general
Message-ID <[email protected]>
I try to combine 1) qi::rule<Iterator, ASTNode*> with 2) 
qi::rule<Iterator> for parsing.
1) intended to create AST nodes, 2) intended to just parse the data and 
hand to another 1) for some AST node.

Please see https://github.com/F-Bergemann/RegexSplitter 
(RegexSplitter.cpp) for trying to handle regex character sets with 2).

But i get:
 > ./regex-splitter "[012345]hello"
TEST:[012345]hello
U:, B:hello,

respectively, when enabling
#define PRINT_DEBUG
then i get:

 > ./regex-splitter "[012345]hello"
TEST:[012345]hello
### ASTNode c'tor (std::string &) #1: Unbreakable
### ASTNode c'tor (std::string &) #2: U:
### ASTNode c'tor (std::string &) #1: Breakable
### ASTNode c'tor (std::string &) #2: B:hello
### ASTNode c'tor (ASTNode const *, std::vector<ASTNode *> &) #1: Collection
### ASTNode d'tor #1: Unbreakable
### ASTNode d'tor #2: U:
### ASTNode d'tor #1: Breakable
### ASTNode d'tor #2: B:hello
### ASTNode c'tor (ASTNode const *, std::vector<ASTNode *> &) #2: Collection
U:, B:hello,
### ASTNode d'tor #1: Collection
### ASTNode d'tor #2: C:hello

I.e. no Iterator data for the corresponding tok_set in the code.

Is it invalid trying to combine qi::rule<Iterator, ASTNode*> and 
qi::rule<Iterator> ?