Roel,
> And then in the list of generated classes:
> class std::pair<std::_Rb_tree_iterator<std::pair<const
> std::basic_string<char>,double> >,bool>
yes, but still what I'd argue is that the one needed is instead:
class std::pair<std::_Rb_tree_iterator<std::pair<std::basic_string<char>,double> >,bool>
In C++, assignments (i.e. on return) between the former and latter work fine b/c the string always gets copied, so there's no issue with the difference in const-ness. I guess that's why the STL implementation chose to add the const in the iterator typedef for this case.
However, in the class-name parsing they end up being seen as different classes. And I believe correctly so. For example, any non-const operation (e.g. append()) would be not be allowed on iterator::first in the former case, whereas it would on the latter. Even (or especially so) in C++.
Now, I don't know how to convince Reflex to change the typedef that it found, but generating the dictionary for the class as suggested should hopefully work.
Best regards,
Wim
-- WLavrijsen_at_lbl.gov -- +1 (510) 486 6411 -- www.lavrijsen.netReceived on Tue Jan 31 2012 - 19:58:52 CET
This archive was generated by hypermail 2.2.0 : Tue Jan 31 2012 - 23:50:01 CET