-
Notifications
You must be signed in to change notification settings - Fork 248
Incorrectly identifying branch as excluded branch #722
Comments
Is that instrumentation code starting with By reading issue title, I'm not sure what is going on here. As far as I can remember, I did not exclude branches based on IL code matching. |
The idea with this area is to identify a branch and if it follows a certain sequence to ignore the branch 2 things seem to have happened since the original code was written
I may look to expand it to also look at the names of the fields etc but this first pass fixes the broken implementation. |
Well, I'm afraid that IL code can possibly change with every new compiler release. Can you identify source code sequence-point covering that IL-sequence? I think, it would be a improvement to get Cecil to return end-offset of each debug sequence, if possible. That would maybe help to identify compiler injected code between debug sequences |
yup, I think I did raise that issue at the time.
yup, but if the branch has no identified sequence point in the range, then we have no attributable source code and can assume it is auto-generated.
I am not sure if cecil would know that, it gets its data from the PDB. |
Unfortunately, because there is no end-offset, all sequence points between first I know that Cecil gets data from PDB, but do not know if PDB contains end-offset at all. |
perhaps the end offset of a sequence point could be the next/closest sequence point? |
That is exactly how it is done. End-offset is next sequence (start-offset - 1). |
#722 identify excluded branch based on IL
Please provide the following information when submitting an issue.
My Framework
My Environment
I have already...
My issue is related to (check only those which apply):
Expected Behavior
Should not incorrect identify branches as excluded
Actual Behavior
Incorrectly identifying code as excluded
Steps to reproduce the problem:
Expected Generated IL was either wrong or has since changed - new expected sequence is
The text was updated successfully, but these errors were encountered: