[ https://issues.apache.org/jira/browse/STDCXX-612?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12556768#action_12556768 ]
Travis Vitek commented on STDCXX-612: ------------------------------------- I'm a little on the fence as to whether item 1 above really is forward compatible or not. There may be some compiler that we aren't testing that requires it, and we would be breaking compatibility there. I don't really have a problem with letting this issue sit until 4.3 or later. I'm also open to never fixing the issue if someone can provide a reasonable argument for why you would want it to not work. Of course that may require someone to explain why the standards gurus decided to require this interesting behavior in some places. That said, if we are intent on doing something with this issue now, then I think the above is acceptable. > many iterator types do not work with types that implement unary operator& > ------------------------------------------------------------------------- > > Key: STDCXX-612 > URL: https://issues.apache.org/jira/browse/STDCXX-612 > Project: C++ Standard Library > Issue Type: Bug > Components: 24. Iterators > Affects Versions: 4.2.0 > Reporter: Travis Vitek > Assignee: Farid Zaripov > Fix For: 4.2.1 > > Attachments: operator_arrow.patch > > > Code that uses the macro _RWSTD_OPERATOR_ARROW will be affected by this > issue. Code that has '&*' is also very likely to be affected. > #include <deque> > #include <iterator> > #include <list> > #include <set> > #include <vector> > struct S > { > void operator& () const {}; > }; > int main () > { > // this is just a compile test, it is not intended to run > std::reverse_iterator<S*>().operator->(); > std::set<S>::iterator().operator->(); > std::deque<S>::iterator().operator->(); > std::list<S>::iterator().operator->(); > return 0; > } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.