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
c20d763490
Merge pull request #3951 from raulgarciamsft/users/raulgarciamsft/dataset_serialization
...
C#: DataSet serialization
2020-08-07 12:54:10 +02:00
Raul Garcia (MSFT)
64f4613a3f
Removing the options file as requested
2020-07-30 10:25:15 -07:00
Raul Garcia (MSFT)
9e74c183fe
Fixing expected results after adding comments to the unit test .cs file
2020-07-30 10:24:24 -07:00
Tom Hvitved
05307b8757
C#: Remove more FPs in cs/dereferenced-value-may-be-null
2020-07-30 12:16:59 +02:00
Tom Hvitved
4f4d9d35be
C#: Add more nullness tests
2020-07-30 12:15:49 +02:00
Raul Garcia (MSFT)
7923c480af
Fixing queries based on suggestions/comments.
...
TODO: Auto-formatting is still pending (need guidance on how to enable it on my environment). Thanks
2020-07-29 17:14:37 -07: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
Tom Hvitved
ce2368de96
C#: Add tests for null-coalescing assignment
2020-07-28 11:07:47 +02:00
Raul Garcia (MSFT)
5387294168
Moving to experimental as requested
2020-07-16 09:32:17 -07:00
Raul Garcia (MSFT)
3e0481b889
Queries to help on the detection based on misuse of DataSet and DataTable serialization that could lead to security problems.
...
https://go.microsoft.com/fwlink/?linkid=2132227
2020-07-14 17:54:54 -07: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
Dave Bartolomeo
881b3c8e33
C#: Fix IR consistency errors
...
We were creating a `TranslatedFunction` even for functions that were not from source code, but then telling the IR package that those functions didn't have IR. This resulted in having prologue/epilogue instructions (e.g. `EnterFunction`, `ExitFunction`) with no enclosing `IRFunction`.
2020-06-15 11:33:00 -04:00
Dave Bartolomeo
8cbc7e8654
C++/C#: Improve consistency failure result messages
...
Some of our IR consistency failure query predicates already produced results in the schema as an `@kind problem` query, including `$@` replacements for the enclosing `IRFunction` to make it easier to figure out which function to dump when debugging. This change moves the rest of the query predicates in `IRConsistency.qll` to do the same. In addition, it wraps each call to `getEnclosingIRFunction()` to return an `OptionalIRFunction`, which can be either a real `IRFunction` or a placeholder in case `getEnclosingIRFunction()` returned no results. This exposes a couple new consistency failures in `syntax-zoo`, which will be fixed in a subsequent commit.
This change also deals with consistency failures when the enclosing `IRFunction` has more than one `Function` or `Location`. For multiple `Function`s, we concatenate the function names. For multiple `Location`s, we pick the first one in lexicographical order. This changes the number of results produced in the existing tests, but does't change the actual number of problems.
2020-06-15 10:46:46 -04: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
70c3ff36f8
C#: Adjust IR imports
2020-06-10 09:54:56 +02: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
Tom Hvitved
86dd86848f
C#: Update call-sensitivity data-flow tests
2020-06-03 14:21:23 +02:00
Dave Bartolomeo
476f27e427
Merge from master
2020-05-28 17:27:08 -04:00
Calum Grant
2b90b50587
Merge pull request #3528 from hvitved/csharp/cfg/cs6-initializers
...
C#: Fix CFG for C# 6 initializers
2020-05-28 21:40:52 +01:00