<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 12 October 2015 at 18:22, Sanjoy Das <span dir="ltr"><<a href="mailto:sanjoy@playingwithpointers.com" target="_blank">sanjoy@playingwithpointers.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">sanjoy abandoned this revision.<br>
sanjoy added a comment.<br>
<br>
This change is unnecessary and buggy.  I was working under the assumption that everything in `X.intersectWith(Y)` has to belong to both `X` and `Y`; whereas `X.intersectWith(Y)` is //allowed// to return a superset of the actual mathematical intersection of `X` and `Y`.  This change is buggy today because it will sometimes return a proper subset of the mathematical intersection of `X` and `Y`.<br></blockquote><div><br></div><div>I'm thoroughly concerned that neither of us noticed this at first. This sort of thing calls for an API review.</div><div><br></div><div>I just reread the ConstantRange.h comment on intersectWith and it looks really clear and simple (and contradictory to some things I said on IRC like "it returns the largest", no it expressly says "guaranteed to ... have the smallest possible set size ...").</div><div><br></div><div>I'm glad though, because I was certain intersectWith was really, really bug free.</div></div></div></div>