riccibruno marked an inline comment as done.
riccibruno added inline comments.


================
Comment at: include/clang/AST/Expr.h:5084
+  /// storage of Stmt * and TypeSourceInfo * in GenericSelectionExpr.
+  template <bool Const> class AssociationIteratorTy {
+    friend class GenericSelectionExpr;
----------------
aaron.ballman wrote:
> riccibruno wrote:
> > aaron.ballman wrote:
> > > riccibruno wrote:
> > > > dblaikie wrote:
> > > > > Worth using any of the iterator helpers LLVM has? (iterator_facade or 
> > > > > the like)
> > > > I did try to use `iteratore_facade` but for some reason I was getting 
> > > > strange overload resolution failures with it.
> > > > 
> > > > In the end it did not save much and so I just rewrote the boiler-plate 
> > > > (especially given that if we end up going with an input iterator there 
> > > > is not going to be much boiler-plate).
> > > Does using the `iterator_facade_base` help now that we're back to an 
> > > input iterator? It seems like that should be able to get rid of some of 
> > > the boilerplate.
> > I must be holding it wrong; for some reason the post-fix operator ++ is not 
> > getting found when I use `iterator_facade_base`. It also forces me to 
> > define `operator==` as a member instead of a non-member function. Do you 
> > mind terribly if I don't use it ? It only at best avoid me to write 
> > `operator!=` and `operator++(int)`.
> It also removes all of the typedefs and `operator->()`, so it does remove 
> quite a bit of boilerplate. You shouldn't have to do anything special to get 
> it to locate the postfix operator++ though (so long as you use public 
> inheritance), which makes me wonder what's going on for your use. I would 
> like to understand more about why this base class doesn't work here when it 
> seems to work fine for the other uses in the code base.
Right. Let me try again then. I will still have to provide `operator->` though 
since the implementation from `iterator_facade_base` is not adequate as far as 
I can tell.


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57106/new/

https://reviews.llvm.org/D57106



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to