9.16
Hello everyone!
For this release, we focused on improving the symbolic execution engine, specifically rules S2589 and S2583, to increase their accuracy.
We also deprecated rule S4792.
False Positive
- 8470 - [C#, VB.NET] Fix S2583 FP: Should not raise on
double
condition - 8378 - [C#, VB.NET] Fix S2583 FP: Variable Set in Catch Block
- 8140 - [C#, VB.NET] Fix S2583 FP: nested try catch blocks
- 8094 - [C#, VB.NET] Fix S2583/S2589 FP: Delegate can be null when last invocation is removed but comparing the delegate against null gets reported as always false
- 8326 - [C#] Fix S2589 FP: Var pattern should not raise
- 8324 - [C#] Fix S2259 FP: Raising issue in unreachable code when using declaration pattern on unknown value
- 8149 - [C#] Fix S2589 FP: Switch Expression default case with bool literal
- 8011 - [C#] Fix S2589 FP: Rule is erroneously raised on var-type pattern matches that use when clauses
- 8008 - [C#] Fix S2589 FP: Rule is raised on catch-all tuples in switch expressions
- 7057 - [C#] Fix S2583/S2589 FP: When tuple deconstruction is used
- 8489 - [VB.NET] Fix S1172 FP: VB names should not be case sensitive