<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Nov 9, 2012, at 19:23 , Douglas Gregor <<a href="mailto:dgregor@apple.com">dgregor@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Nov 9, 2012, at 6:53 PM, Jordan Rose <<a href="mailto:jordan_rose@apple.com">jordan_rose@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>This isn't actually a circular dependence, either. IntervalMap<>::const_iterator is inheriting from std::iterator.</div><div><br></div><div>I don't see anything obviously wrong with your patch, though...</div></div></blockquote><div><br></div>I see the problem in my patch. CXXRecordDecl::forallBases has a ridiculously non-intuitive API.</div></div></blockquote><br></div><div>Also your predicate is named backwards from what it actually does. :-)</div><br></body></html>