Tamás Vajk
24140195d6
Merge pull request #5242 from tamasvajk/feature/tuple-df
...
C#: Add tuple dataflow
2021-03-16 11:45:11 +01:00
Tamas Vajk
4709442ef3
Extract tuple types from patterns and variable declarations
2021-03-09 09:14:23 +01:00
Tamas Vajk
1d70bfd011
Extract non-named tuple types
2021-03-09 09:06:35 +01:00
Tamas Vajk
7e1eee5fe2
Add tests that show tuple types
2021-03-09 09:06:35 +01:00
Tamas Vajk
cb4ed90c5c
Fix failing tests
2021-03-03 16:58:48 +01:00
Tamas Vajk
b3d6d0c12b
Fix method name resolution issue with nullable suppression
2021-02-26 09:48:37 +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
249e431e87
C#: Adjust CFG for {Recursive,Positional,Property}PatternExpr
2021-02-01 13:52:18 +01:00
Tamas Vajk
1b6cb340d3
C#: Report IndexerProperty as Property in the PrintAST query
2021-02-01 10:08:51 +01:00
Tamas Vajk
7e9913a8a7
Fix failing pattern tests
2021-01-29 17:25:44 +01:00
Tom Hvitved
063733ad52
C#: Implement CFG for not patterns
2021-01-25 13:52:17 +01:00
Tamas Vajk
19883302af
C#: Extract local functions without body
2020-11-25 14:42:40 +01:00
Tom Hvitved
7f0ad2d232
Merge pull request #4646 from hvitved/csharp/cfg/post-order-exprs
...
C#: Represent all expressions in post-order in the CFG
2020-11-17 13:01:35 +01:00
Tom Hvitved
94deed39a2
C#: Represent all expressions in post-order in the CFG
2020-11-12 20:04:48 +01:00
Tamas Vajk
8cbe8bc6b5
C#: Fix parent of 'TypeMention' for some variable declaration
2020-11-12 13:43:13 +01:00
Tom Hvitved
6723e5b31c
C#: Restrict post-dominance to normal execution
2020-10-30 09:14:12 +01:00
Tamas Vajk
5d0c30db66
C#: Fix nullable reference type handling in type mention extraction
2020-10-20 08:23:57 +02:00
Tamas Vajk
dad5166bca
C#: Print full name of type mentions in AST
2020-10-20 08:23:57 +02:00
Tamas Vajk
ca6ecb3f1e
C#: Extract type mention for array creation
2020-10-20 08:23:56 +02:00
Tamas Vajk
7066568813
C#: Change type access and expression order in casts for AST printing
2020-10-20 08:23:56 +02:00
Tamas Vajk
6c48eb8c12
C#: Add type mentions to AST
2020-10-20 08:23:56 +02:00
Tamas Vajk
5fae440a58
C#: Reverse assignment child nodes in AST
2020-10-14 12:49:08 +02:00
Tamas Vajk
ee9a40e16d
C#: Remove location from base types in the AST
2020-10-14 12:49:08 +02:00
Tamas Vajk
5f96c37b28
C#: Fix switch case expression types
2020-09-22 13:16:31 +02:00
Tamas Vajk
cc979d0b5f
C#: Add switch case expression type test
2020-09-22 11:04:44 +02:00
Tamas Vajk
e2c205deb4
C#: Add stable order for generated accessors in printed AST
2020-09-04 10:39:01 +02:00
Tom Hvitved
51dc1515ab
C#: Address review comments
2020-09-02 10:52:05 +02:00
Tom Hvitved
d17f88bbcd
C#: Remove assembly prefix from all extractor IDs
2020-09-02 10:52:04 +02:00
Calum Grant
cd51a67c0d
C#: Take nullability into account when creating symbol entities. Otherwise, an entity with the wrong (cached) nullability could be created.
2020-09-02 10:52:04 +02:00
Calum Grant
4657ddcb7c
C#: Avoid qualifying explicit interface implementations.
2020-09-02 10:52:03 +02:00
Tom Hvitved
b8cde180b9
C#: Order top-level elements by location in PrintAst.qll
2020-08-21 06:17:37 +02:00
Tamás Vajk
2a8ff8785a
C#: Add AST printing ( #4038 )
2020-08-20 14:24:43 +02:00
Tom Hvitved
8c0c283811
Revert "C#: Improve db consistency by removing assembly id"
2020-04-22 16:32:13 +02:00
Calum Grant
ead916702a
C#: Take nullability into account when creating symbol entities. Otherwise, an entity with the wrong (cached) nullability could be created.
2020-04-20 11:29:31 +01:00
Calum Grant
abf6be6030
C#: Avoid qualifying explicit interface implementations.
2020-04-07 11:17:35 +01:00
Calum Grant
d0d7ed620c
C#: Update comments in test file to reflect fixed test output.
2020-01-07 18:39:52 +00:00
Calum Grant
359dea2c2b
C#: Fixed test output.
2020-01-07 18:39:52 +00:00
Calum Grant
85c9459b35
C#: Add more tests showing incorrect extraction.
2020-01-07 18:39:51 +00:00
Calum Grant
10181e93e2
C#: Update QLtest output
2020-01-07 18:39:51 +00:00
Calum Grant
8db46bc8ec
C#: More tests for nullable flow state.
2020-01-07 18:38:58 +00:00
Calum Grant
6c9ebaba0b
C#: Populate expression type nullability and nullable flow state.
2020-01-07 18:38:58 +00:00
Calum Grant
0327b83958
C#: Update nullability tests.
2020-01-07 18:38:58 +00:00
Calum Grant
5e6b7be5b8
C#: Update nullability tests.
2019-12-06 12:41:20 +00:00
Calum Grant
aac360463b
C#: Tests for default interface methods.
2019-11-15 10:13:04 +00:00
Calum Grant
ce188c0c22
C#: Autoformat
2019-11-12 13:40:58 +00:00
Calum Grant
f00276a82c
C#: Remove non-essential changes
2019-11-12 13:40:58 +00:00
Calum Grant
a0fa7dad79
C#: Autoformat
2019-11-12 13:40:58 +00:00
Calum Grant
9fd4a9ceb6
C#: Implement NullabilityEntity to model structured nullability on the side
2019-11-12 13:40:57 +00:00
Calum Grant
61ab9431ab
C#: Fix DB inconsistencies, and rework id generation.
2019-11-12 13:40:57 +00:00
Tom Hvitved
5d140930d0
C#: Add field initializers to CFG for constructors
...
This commit adds field initializers to the CFG for non-static constructors. For
example, in
```
class C
{
int Field1 = 0;
int Field2 = Field1 + 1;
int Field3;
public C()
{
Field3 = 2;
}
public C(int i)
{
Field3 = 3;
}
}
```
the initializer expressions `Field1 = 0` and `Field2 = Field1 + 1` are added
to the two constructors, mimicking
```
public C()
{
Field1 = 0;
Field2 = Field1 + 1;
Field3 = 2;
}
```
and
```
public C()
{
Field1 = 0;
Field2 = Field1 + 1;
Field3 = 3;
}
```
respectively. This means that we no longer have to synthesize calls, callables,
parameters, and arguments in the data flow library, so much of the work from
d1755500e4 can be simplified.
2019-08-21 16:21:38 +02:00