-
Notifications
You must be signed in to change notification settings - Fork 1.9k
C#: Make support for Line span pragma #7577
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
8df9b2b to
e75b38e
Compare
…plementation to use the new types.
c5efd30 to
de3d62b
Compare
|
Need to also look into the SourceLocation stuff (forgot that). Will write something here, when investigation is finished. |
Tried to do some dev testing of this and looks like it is working out of the box. query predicate elements(Assignment statement, File f) { statement.getLocation().getFile() = f }Which among other things produced the output | LinePragmasRef1.cs:1:9:1:13 | Int32 i = ... | LinePragmasRef1.cs:0:0:0:0 | LinePragmasRef1.cs |
| LinePragmasRef2.cs:2:13:2:17 | Int32 j = ... | LinePragmasRef2.cs:0:0:0:0 | LinePragmasRef2.cs |and it looks like this respects the line span pragma info. |
|
Ready for review. |
hvitved
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approach LGTM.
...rp/extractor/Semmle.Extraction.CSharp/Entities/PreprocessorDirectives/LineOrSpanDirective.cs
Show resolved
Hide resolved
csharp/extractor/Semmle.Extraction.CSharp/Entities/PreprocessorDirectives/LineSpanDirective.cs
Show resolved
Hide resolved
csharp/extractor/Semmle.Extraction.CSharp/Entities/PreprocessorDirectives/LineSpanDirective.cs
Outdated
Show resolved
Hide resolved
hvitved
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Then we just need a final DCA run, since the stats have been updated.
Great! I will start one. |
|
Execution times are looking good. Merging now. |
C# 10 introduced a new #line pragma, where it is possible to specify, how start and end (line and column) including an offset should be printed, when a compiler warning is issued.
In the PR we