-Andy
BTW - line 158 in SeExpression.cpp causes more issues on Windows:
int* bound=lower_bound(&*lines.begin(),&*lines.end(),_errors[i].startPos);
I'm not %100 why you're dereferencing a reference but this causes a "vector iterator not dereferencable " exception which actually makes perfect sense, what does it mean to dereference lines.end() as it's an iterator pointing to the point past the last element.
Is there any reason why it can't be:
int bound=*(lower_bound(lines.begin(),lines.end(),_errors[i].startPos));
int line=bound-(*lines.begin()) + 1;
//int column=_errors[i].startPos-lines[line-1];
sstream<<" Line "<<line<<": "<<_errors[i].error<<std::endl;
or was the intention of the code at that point different?
I was going to fork the SeExpr project on github and commit the changes I'm making so you can review and integrate if you feel inclined. :)
Thanks again!
This looks fine. I can't think of a reason that it was done the other
way (even though I'm pretty certain I wrote that line)
> or was the intention of the code at that point different?
>
> I was going to fork the SeExpr project on github and commit the changes I'm making so you can review and integrate if you feel inclined. :)
>
perfect
-Andy