Parse error on std::function template parameters
Parse error on :
typedef std::function<int()> IntGetter;
std::function<char(char)> converter;
int h(std::function<unsigned long(double)>);
and any std::function template parameter (seems like the '(' and ')' are not supported so no function pointer may actually work, not tested with C function pointers.
Thanks for the bug report!
stubgen's parser does not conform to the latest C++ standard. It was developed back in 1998 as a gigantic hack that I created when I was teaching myself lex/yacc. Hacking the yacc grammar further probably isn’t a good idea, since C++ isn’t an LALR(1) language anyways.
At the time it was written it handled C++98 pretty well - but it may not handle C++03 or C++11 well at all.
If you would be interested in adapting the grammar to handle this case, we would gladly accept a pull request.