Commit Graph

1206 Commits

Author SHA1 Message Date
Calum Grant
620ecc8128 C#: Address review comments part 1. 2019-06-26 20:24:56 +01:00
Calum Grant
f9099653a6 C#: Do not extract type annotations that can be deduced. Put specific_type_parameter_annotation on the side of specific_type_parameter_constraints. 2019-06-26 20:24:55 +01:00
Calum Grant
4aa1947a23 C#: Implement type annotations for nullability, parameter kinds and method returns. 2019-06-26 20:24:55 +01:00
Tom Hvitved
5cc11ba232 C#: Update nuget packages 2019-06-17 13:26:11 +02:00
Tom Hvitved
d333ffb57a C#: Update to netcoreapp2.2 2019-06-17 13:21:00 +02:00
Calum Grant
d48ce859eb C#: Implement nullable warning suppression expressions. 2019-06-11 12:12:29 +01:00
Calum Grant
73c2898666 C#: Minor edits. 2019-06-04 18:10:49 +01:00
Calum Grant
15cd1d274a C#: Implement using declaration statements. 2019-06-04 18:10:49 +01:00
Calum Grant
ac3a06f77b C#: Implement null coalescing assignment operator 2019-06-04 18:10:49 +01:00
Calum Grant
599a5b1eef C#: Make @local_function @modifiable, make LocalFunction extend Modifiable, and extract modifiers for local functions. 2019-06-04 18:10:49 +01:00
Tom Hvitved
2d0554a7ee C#: Address review comments 2019-06-03 16:00:22 +02:00
Tom Hvitved
25cb01ffea C#: Handle discard variable declarations in switch expressions 2019-06-03 15:50:41 +02:00
Tom Hvitved
8c1cab2d03 C#: Simplify extraction of is expressions and case statements 2019-06-03 15:50:41 +02:00
Calum Grant
573646fe6a C#: Various C#8 features:
- Async streams (test only)
 - Unmanaged generic structs (extractor support)
 - Alternate interpolated strings (test only)
 - static local function (test only)
2019-05-29 08:12:11 +01:00
Calum Grant
d2aea635e4 C#: Address review comments 2019-05-24 13:49:05 +01:00
Tom Hvitved
a1e58cedac C#: Refactor recursive patterns implementation
- Extract names of properties in a propery match, using the `exprorstmt_name` relation.
- Simplify extraction of properties by not distinguishing between top-level patterns
  and nested patterns.
- Introduce `PatternExpr` to capture patterns in `is` expressions, `case` statements,
  and `switch` expression arms.
- Generalize `IsTypeExpr`, `IsPatternExpr`, `IsRecursivePatternExpr`, and `IsConstantExpr`
  to just `IsExpr` with a member predicate `PatternExpr getPattern()`.
- Generalize `TypeCase`, `RecursivePatternCase`, and `ConstCase` to just `CaseStmt` with
  a member predicate `PatternExpr getPattern()`.
- Introduce classes `Switch` and `Case` as base classes of switch statements/expressions
  and case statements/switch expression arms, respectively.
- Simplify CFG logic using the generalized classes.
- Generalize guards library to cover `switch` expressions tests.
- Generalize data flow library to cover `switch` expression assignments.
2019-05-24 13:49:05 +01:00
Calum Grant
21203cdf0d C#: Minor code tidy. 2019-05-24 13:49:05 +01:00
Calum Grant
aecc9e2a57 C#: Fix LGTM warnings 2019-05-24 13:49:05 +01:00
calum
1428d0ba93 C#: Implement recursive patterns 2019-05-24 13:49:05 +01:00
calum
318068b52f C#: Implement range operator 2019-05-24 13:49:04 +01:00
Calum Grant
fcfb7b2b8a C#: Fix error caused by Roslyn upgrade. 2019-05-22 16:17:16 +01:00
Calum Grant
e5aa7f3ba7 C#: Upgrade to Roslyn 3.1 2019-05-22 15:54:30 +01:00
calum
39bb3f2d52 C#: Fix elapsed timings and add a test for it. 2019-05-13 09:18:52 +01:00
calum
c67e441003 C#: Implement compilation_referencing_files and update comments for C#. 2019-05-13 09:18:52 +01:00
calum
2a484dc4ea C#: Fix alerts and tests. 2019-05-13 09:18:52 +01:00
calum
66b3df7f29 C#: Fix unit tests. 2019-05-13 09:18:52 +01:00
calum
3046cc494a C#: Code tidy. 2019-05-13 09:18:52 +01:00
calum
343cddcbb7 C#: Refactor extractor errors and log extractor errors to the database. 2019-05-13 09:18:52 +01:00
calum
e1158bb5e5 C#: Store compilations, compiler diagnostics and performance in the database. 2019-05-13 09:18:52 +01:00
calum
c28fa7ed3f C#: Handle VarPatternSyntax class introduced by Roslyn 3.0.0 2019-05-07 18:01:37 +01:00
calum
8a78c8f124 C#: Update xunit and other dependencies. 2019-05-07 18:01:36 +01:00
calum
d84fcbeedb C#: Fix extractor errors. 2019-05-07 18:01:36 +01:00
calum
b7875aef20 C#: Update nuget packages 2019-05-07 18:01:36 +01:00
calum
932961bf19 C#: Remove static SHA1CryptoServiceProvider 2019-04-01 10:46:39 +01:00
Tom Hvitved
664aa8db47 C#: Address review comment 2019-03-27 13:32:11 +01:00
Tom Hvitved
7634973bb4 C#: Handle named attribute arguments 2019-03-27 11:10:24 +01:00
Tom Hvitved
1d05bccd87 Merge pull request #952 from calumgrant/cs/non-null-functions
C#: Better call analysis using CIL
2019-03-23 10:47:22 +01:00
calum
d76a9805ae C#: Fix assembly labels when public key token is null. 2019-03-18 17:59:56 +00:00
Robert Brignull
5380e1df68 Merge remote-tracking branch 'upstream/rc/1.20' into merge/rc/1.20 2019-03-13 10:55:30 +00:00
Tom Hvitved
8db983c2ee Merge branch 'rc/1.19' into merge-rc 2019-03-12 17:34:44 +01:00
Tom Hvitved
c5450128be Merge branch 'rc/1.20' into merge-rc 2019-03-12 09:14:38 +01:00
calum
173fbc806c C#: Fix extractor to avoid the recursive eval of TypeArgumentList and update test results. 2019-03-07 09:44:18 +00:00
Tom Hvitved
440809623b C#: Fix whitespaces 2019-03-06 08:15:46 +01:00
calum
884af9bd7f C#: Fix alert. 2019-02-12 13:34:33 +00:00
calum
e18eeb8d2a C#: Address review comments. 2019-02-12 12:56:58 +00:00
calum
1e1784239c C#: Alert suppression comments for lgtm[cs/catch-of-all-exceptions 2019-02-12 12:45:22 +00:00
calum
8bb1af884a C# extractor: Limit string literals to 1MB. This is made more complicated by the fact that we need to limit the number of bytes to output, rather than the number of characters. 2019-02-11 17:36:23 +00:00
calum
f39daaeeab C#: Suppress cs/catch-of-all-exceptions 2019-01-29 18:22:12 +00:00
calum
e76eb1641a C#: Address review comment. 2019-01-11 16:13:04 +00:00
calum
de4f592bba C#: Add alert suppression comments for cs/similar-file 2019-01-11 12:36:20 +00:00