>About the reference issue, what do you think about the output for the
>following function:
>bool parse_definition(std::string const &file_name, parse_cb_t cb);
>---%<---
>Token->text function tests:
>semantic-name-nonterminal:
> parse_definition
>semantic-abbreviate-nonterminal:
> parse_definition()
>semantic-summarize-nonterminal:
> Functions: bool parse_definition (const std::string
>file_name,parse_cb_t cb)
>semantic-prototype-nonterminal:
> bool parse_definition (const std::string file_name,parse_cb_t cb)
>semantic-concise-prototype-nonterminal:
> parse_definition (std::string,parse_cb_t)
>semantic-uml-abbreviate-nonterminal:
> +parse_definition : bool
>semantic-uml-prototype-nonterminal:
> +parse_definition (file_name : std::string,cb : parse_cb_t) : bool
>semantic-uml-concise-prototype-nonterminal:
> +parse_definition (std::string,parse_cb_t) : bool
>semantic-prin1-nonterminal:
> ("parse_definition" function ("bool") (("file_name" variable
>"std::string" nil ((const . t)) nil nil #<overlay from 684 to 713 in
>parse_mab_kat.hpp>) ("cb" variable "parse_cb_t" nil nil nil nil
>#<overlay from 714 to 728 in parse_mab_kat.hpp>)) ((prototype . t))
>nil nil #<overlay from 662 to 729 in parse_mab_kat.hpp>)
>--->%---
>Does this look ok to you?
Yes, for me it does. Eric?
>I just discovered another issue with typedefs. Normal typedefs are
>parsed correctly, but a typedef for a function pointer isn't.
>For example:
>typedef bool (* foo_t)(int const &);
>gives the followinng output:
>---%<---
>Token->text function tests:
>semantic-name-nonterminal:
> [Snip]
>semantic-prin1-nonterminal:
> ("" variable "foo_t" nil nil nil nil #<overlay from 827 to 833 in
>parse_mab_kat.hpp>)
>--->%---
Yes, function-pointer parsing is in general bad in the 1.4.X semantic.
AFAIK there are more problems not only with typedefs...Do not know exactly
how to solve this....
Klaus
|