<div class="gmail_quote">On Fri, Jul 6, 2012 at 4:02 PM, Jakob Stoklund Olesen <span dir="ltr"><<a href="mailto:stoklund@2pi.dk" target="_blank">stoklund@2pi.dk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><br><div><div class="im"><div>On Jul 6, 2012, at 3:40 PM, Chandler Carruth <<a href="mailto:chandlerc@gmail.com" target="_blank">chandlerc@gmail.com</a>> wrote:</div><br></div><div class="im">
<blockquote type="cite"><div style="font-family:Optima;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:-webkit-auto;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
I'll integrate this (as wel as your and Ben's comments) into a fresh patch shortly for you to look at before I commit.</div></blockquote></div></div><br><div>You'll probably need this anyway: I think it would be nice to have a LiveInterval::verify() function that checks all the invariants:</div>
<div><br></div><div>ranges[i].start.isValid()</div><div>ranges[i].end.isValid()</div><div>ranges[i].start < ranges[i].end</div><div>ranges[i].valno != NULL</div><div>ranges[i].valno == valnos[ranges[i].valno->id]</div>
<div>ranges[i].end <= ranges[i+1].start</div><div>ranges[i].end == ranges[i+1].start ==> ranges[i].valno != ranges[i+1].valno</div></div></blockquote></div><br><div>Attached a patch to implement this. It's used in fairly ad-hoc places currently, but seems useful and its super easy to wire it up more places.</div>