Tamas Vajk
2868d5bf34
C#: Add pointer cast test cases
2020-09-23 12:20:51 +02:00
Tamás Vajk
03e20eed05
Merge pull request #4314 from tamasvajk/feature/switch-case-expr
...
C#: Fix switch case expression types
2020-09-23 08:57:32 +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
Tom Hvitved
06dbec78f7
C#: Add Guard::controlsBasicBlock() and simplify Guard::isEquality()
2020-09-21 16:15:12 +02:00
Tamas Vajk
8bf4a4209c
C#: Sign analysis
...
Synced between Java and C# through `identical-files.json`.
2020-09-21 16:15:12 +02:00
Tom Hvitved
d095d6b56b
Merge pull request #4139 from hvitved/csharp/cfg/foreach-loop-empty
...
C#: Skip `foreach` loop bodies in the CFG when the iteration expression is empty
2020-09-15 09:30:29 +02:00
Tom Hvitved
6c5b30d2a4
C#: Update CIL consistency test
2020-09-11 11:49:07 +02:00
Tom Hvitved
6c716331d9
C#: Skip foreach loop bodies in the CFG when the iteration expression is empty
2020-09-07 15:26:28 +02:00
Tom Hvitved
9e240b7397
C#: Add more CFG loop unrolling tests
2020-09-07 15:26:25 +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
c7f776984f
C#: Add CFG tests for callables with multiple implementations
2020-09-02 10:52:05 +02:00
Tom Hvitved
8a0355720a
C#: Make Callable::get[Expression|Statement]Body() return all possible implementations
...
Previosly, we returned only the body belonging to "the most likely" implementation,
based on a CFG size heuristics. However, now that more callables are mapped to the
same entity, it makes more sense to treat such callables (to some extent) like
partial methods. This means, for instance, that data flow will branch out to all possible
implementations, much like we do for virtual dispatch.
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
f61fdc6891
C#: Only resolve a single, canonical type for each typeref.
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
4e963a8a8e
Merge pull request #4165 from hvitved/csharp/foreach-guard
...
C#: Fix bug in guards logic for `foreach` loops
2020-08-31 14:32:09 +02:00
Tom Hvitved
b205702853
C#: Fix bug in guards logic for foreach loops
2020-08-28 15:19:11 +02:00
Tom Hvitved
ddb33c914b
C#: Add test that demonstrates issue with guards logic for foreach statements
2020-08-28 15:13:18 +02:00
Tamas Vajk
66e3739e72
Fix failing PrintAst test
2020-08-24 22:41:08 +02:00
Tamas Vajk
3dea6b3218
C#: Change implicitly sized array test input
2020-08-24 16:14:00 +02:00
Tamas Vajk
7516825b5f
C#: Fix computed sizes for implicitly sized array creation
2020-08-24 16:14:00 +02:00
Tamas Vajk
699cafa890
C#: Add implicitly sized array creations to tests
2020-08-24 15:27:35 +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
65b4d35add
Merge pull request #4055 from tamasvajk/feature/partial-methods
...
C#: Add body to partial methods
2020-08-20 10:14:56 +02:00
Tamas Vajk
0cf4c99986
C#: Change compiler generated flag for length arguments of implicitly sized arrays
2020-08-18 12:06:01 +02:00
Tamas Vajk
99e62ceee6
C#: Add test for length argument of implicitly sized arrays
2020-08-18 11:44:24 +02:00
Tamas Vajk
beeadea48f
Add extra tests for partial methods
2020-08-18 10:26:31 +02:00
Tom Hvitved
d39a33655f
C#: Fix false-positives in cs/dereferenced-value-may-be-null
...
Dereferencing an expression of a nullable type should only be reported when
the expression is not clearly non-null.
2020-07-28 16:27:36 +02:00
Calum Grant
dcff87fb2e
Merge pull request #3366 from hvitved/csharp/dataflow/arrays
...
C#: Precise data-flow for collections
2020-07-14 17:12:29 +01:00
Tom Hvitved
527a099a26
C#: Fix CFG for conditional method calls with out parameters
2020-07-02 13:12:53 +02:00
Tom Hvitved
090205d9e9
C#: Add CFG test for conditional call to method with out parameter
2020-07-02 13:09:40 +02:00
Tom Hvitved
795c5784b0
C#: Precise data flow for collections
2020-06-26 13:40:05 +02:00
Tom Hvitved
6efbd5f9d1
C#: Add data-flow test for List.Clear()
2020-06-26 11:44:08 +02:00
Calum Grant
8725e09053
Merge pull request #3798 from hvitved/csharp/dataflow/async-tests
...
C#: Move async data-flow tests from local to global
2020-06-26 10:14:28 +01:00
Tom Hvitved
b8ae4b7f64
C#: Move async data-flow tests from local to global
2020-06-25 10:04:18 +02:00
Tom Hvitved
3f91aa3b55
C#: More data-flow collection tests
2020-06-25 09:48:52 +02:00
Tom Hvitved
3faca03de6
C#: Introduce ObjectInitializerNode
2020-06-23 10:55:12 +02:00
Tom Hvitved
a1d5591634
C#: Model field-clearing in data-flow
2020-06-23 10:55:11 +02:00
Tom Hvitved
b5bc15a097
C#: Add more field-flow tests
2020-06-23 10:55:11 +02:00
Calum Grant
f2f020fa51
Merge pull request #3610 from hvitved/csharp/dataflow/call-sensitivity
...
C#: Add call-sensitivity to data-flow call resolution
2020-06-22 10:36:45 +01:00
Anders Schack-Mulligen
8107fbadc2
Merge pull request #3456 from hvitved/dataflow/precise-field-types
...
Data flow: Track precise types during field flow
2020-06-19 11:50:10 +02:00
Tom Hvitved
ca86bb8603
Address review comments
2020-06-19 10:34:11 +02:00
Calum Grant
cd914deeff
Merge pull request #3666 from hvitved/csharp/ir-experimental
...
C#: Move IR code into 'experimental' folder
2020-06-10 19:50:37 +01:00
Tom Hvitved
3c8735f43f
C#: Move IR code into 'experimental' folder
2020-06-10 09:37:30 +02:00
Tom Hvitved
8c9f85d04f
Data flow: Allow nodes to be hidden from path explanations
2020-06-09 13:53:19 +02:00
Tom Hvitved
9e7ca25732
C#: Add call-sensitivity to data-flow call resolution
2020-06-03 20:43:49 +02:00