Tamas Vajk
7761774f88
Add record .ctor to property data flow summary
2021-02-12 19:54:52 +01:00
Tom Hvitved
6a6644b5c2
C#: Adjust data-flow for with expressions
...
In `x with { Foo = bar }`, instead of having a single data-flow step
`x => x with { Foo = bar }`
we now have two steps:
`x => { Foo = bar }`
and
`{ Foo = bar } => x with { Foo = bar }`
Moreover, `clearsContent` now targets the object initializer instead of the
whole `with` expression, which means that it will only apply to values carried
over from the old object and not those explicitly stored into the new object.
2021-02-12 19:54:52 +01:00
Tamas Vajk
dd9b1d52b5
C#: Initial data-flow for with expressions
2021-02-12 19:54:52 +01:00
Tamas Vajk
b2b4c9ecd6
C#: Extract 'with' expressions
2021-02-12 19:54:52 +01:00
Raul Garcia (MSFT)
f114ef1f06
Adding unit tests
2021-02-08 16:57:49 -08:00
Tamas Vajk
7c506f445c
C#: Extract underlying methods of foreach statements
2021-02-07 09:06:11 +01:00
Tamas Vajk
83f0fad014
Fix expected test AST
2021-02-04 21:08:01 +01:00
Tamas Vajk
f0b0845f9f
Add 'record' QL class
2021-02-04 21:08:01 +01:00
Tamas Vajk
9ffc38f5b1
Fix deterministic ordering of class members in PrintAst
2021-02-04 21:08:01 +01:00
Tamas Vajk
a6fd7a3203
C#: Extract record declarations
2021-02-04 21:08:01 +01:00
Tamás Vajk
ca992f2d3c
Merge pull request #5005 from tamasvajk/feature/follow-line
...
C#: Follow line directives when getting element location
2021-02-04 11:22:55 +01:00
Tamás Vajk
1fd244923b
Merge pull request #5052 from tamasvajk/feature/fnptr-df
...
C#: Add data flow 'getARuntimeTarget' predicate to 'FunctionPointerCall'
2021-02-04 08:51:03 +01:00
Tamas Vajk
543f5916c4
Fix expected test AST
2021-02-04 08:49:19 +01:00
Tamas Vajk
899e52a68a
Adjust getMappedLocation to not include line directives
2021-02-04 08:42:39 +01:00
Tamas Vajk
a1d227dbbb
C#: Follow line directives when getting element location
2021-02-04 08:42:39 +01:00
Tamas Vajk
967765342e
Assign preprocessor directives to compilation + make compilation cached
2021-02-04 08:42:39 +01:00
Tamas Vajk
e450b61464
Fix code review findings in directives base class
2021-02-04 08:42:38 +01:00
Tamas Vajk
60b23dc505
Fix code review findings in 'endregion' directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
6ef8e51bcf
Fix code review findings in 'line' directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
bd64dda4c3
Fix code review findings in pragma warning directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
a896e1522d
Extract active flag from directives, fix missing assembly location
2021-02-04 08:42:38 +01:00
Tamas Vajk
41fbce0ad0
Extract #if directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
a5d18f9b68
Extract region directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
fe0a494bab
Extract line directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
4bb8b6c992
Extract nullable directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
15c611e22f
Extract warning and error directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
3740aba4a8
Extract undef directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
9b405144ff
Extract define directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
94bf3467b7
Extract pragma checksum directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
8b9c6712d1
Extract pragma warning directives
2021-02-04 08:42:38 +01:00
Tamas Vajk
48d24b2264
Get line comments from trivia lines
2021-02-04 08:42:38 +01:00
Tamas Vajk
046a37b834
Simplify element access extraction
2021-02-04 08:42:38 +01:00
Tamas Vajk
c3ef6841d0
Add tests for trivia types
2021-02-04 08:42:38 +01:00
Tom Hvitved
a45c415c5b
Merge pull request #5067 from hvitved/csharp/cfg/patterns
...
C#: Adjust CFG for `{Recursive,Positional,Property}PatternExpr`
2021-02-03 12:09:39 +01:00
Tom Hvitved
1ffa15ea96
C#: Update expected test output
2021-02-02 08:52:28 +01:00
Tom Hvitved
249e431e87
C#: Adjust CFG for {Recursive,Positional,Property}PatternExpr
2021-02-01 13:52:18 +01:00
Tamas Vajk
7d62e33feb
C#: Rework function pointer/delegate call DF
2021-02-01 13:40:03 +01:00
Tamas Vajk
1b6cb340d3
C#: Report IndexerProperty as Property in the PrintAST query
2021-02-01 10:08:51 +01:00
Tamás Vajk
aa35fcafeb
Merge pull request #5018 from tamasvajk/feature/csharp9-binary-pattern-cfg
...
C#: Extract 'and' and 'or' patterns
2021-02-01 09:17:52 +01:00
Tamas Vajk
7e9913a8a7
Fix failing pattern tests
2021-01-29 17:25:44 +01:00
Tamas Vajk
a9c51e7300
Fix missing pattern matching completions
2021-01-29 15:16:30 +01:00
Tamas Vajk
91152d3a65
Add additional tests to delegate call data flow
2021-01-29 12:02:11 +01:00
Tamas Vajk
191962f64c
C#: Add data flow 'getARuntimeTarget' predicate to 'FunctionPointerCall'
2021-01-29 12:01:38 +01:00
Tom Hvitved
e6f81bcf0b
C#: Update expected test output
2021-01-28 10:34:50 +01:00
Tom Hvitved
6ee5cdf2b2
C#: Simpler data-flow modelling of parameters
2021-01-28 10:34:47 +01:00
Tom Hvitved
65ea01e145
Merge pull request #4999 from hvitved/csharp/dataflow/phi-input
...
C#: Adjust flow into phi nodes
2021-01-28 09:07:01 +01:00
Tamas Vajk
669e207600
Fix sign analysis expected file
2021-01-27 16:40:56 +01:00
Tamas Vajk
10518744cf
C#: Remove expressions inside attributes from CFG
2021-01-27 13:20:06 +01:00
Tamas Vajk
e24e5b13f5
C#: Improve CFG to handle 'and' and 'or' patterns
2021-01-27 11:52:59 +01:00
Tamas Vajk
4685fc0a32
C#: Extract binary patterns
2021-01-27 11:27:52 +01:00