<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Mon, Feb 29, 2016 at 5:49 PM Zachary Turner <<a href="mailto:zturner@google.com">zturner@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Those are addresses.  Here's the situation I was encountering this on:</div><div><br></div><div>// foo.h</div><div>#include "bar.h"</div><div>inline int f(int n)</div><div>{</div><div>    return g(n) + 1;</div><div>}</div><div><br></div><div>// bar.h</div><div>inline int g(int n)</div><div>{</div><div>    return n+1;</div><div>}</div><div><br></div><div>// foo.cpp</div><div>#include "foo.h"</div><div>int main(int argc, char** argv)</div><div>{</div><div>    return f(argc);</div><div>}</div><div><br></div>PDB gives me back line numbers and address range grouped by file.  So I get all of foo.h's lines, all of bar.h's lines, and all of foo.cpp's lines.  In sorted form, the lines for g will appear inside the sequence of lines for f.  So that's how the situation was arising.</div></blockquote><div><br></div><div>Just to clarify here.  When I was encountering this problem, I would create one LineSequence for foo.h's lines, one LineSequence for bar.h's lines, and one for foo.cpp's.  And each one is monotonically increasing, but the ranges can overlap as per the previous explanation, which was causing InsertLineSequence to fail. </div></div></div>