-
Notifications
You must be signed in to change notification settings - Fork 128
Comparing changes
Open a pull request
base repository: dotnet/linker
base: 31a57b5
head repository: dotnet/linker
compare: f09bacf
- 13 commits
- 36 files changed
- 9 contributors
Commits on Jul 19, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 60f48c5 - Browse repository at this point
Copy the full SHA 60f48c5View commit details
Commits on Jul 20, 2022
-
Fix syntax node scope and nullable warnings (#2900)
The syntax node scope should be the innermost node, otherwise GetSymbolInfo will often return null. As an example, GetSymbolInfo will return null for an ArgumentSyntax node, but the underlying expression will likely resolve into a symbol. Also adds proper null checks in case any of the providers return null.
Configuration menu - View commit details
-
Copy full SHA for 7a61266 - Browse repository at this point
Copy the full SHA 7a61266View commit details -
Add a test for stack overflow when marking lambda which indirectly ma…
Configuration menu - View commit details
-
Copy full SHA for fa9b810 - Browse repository at this point
Copy the full SHA fa9b810View commit details
Commits on Jul 21, 2022
-
Redundant warning suppressions detection (#2891)
* Created first draft of unused suppressions detection doc. * design doc improvements * Fix redundant suppressions design doc wording * Fix typos Co-authored-by: Eric Erhardt <[email protected]> * Apply suggestions from code review Co-authored-by: Sven Boemer <[email protected]> * Changed example and added review suggestions. * Apply suggestions from code review Co-authored-by: Vitek Karas <[email protected]> * removed implementation details Co-authored-by: Eric Erhardt <[email protected]> Co-authored-by: Sven Boemer <[email protected]> Co-authored-by: Vitek Karas <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e981e95 - Browse repository at this point
Copy the full SHA e981e95View commit details -
Fix re-entrancy when marking nested functions (#2907)
This fixes endless recursion introduced by the change which scans compiler-generated methods as a group. This change fixes the re-entrancy instead of putting a temporary value in the cache, because this will make it easier to fix the behavior of CheckRequiresReflectionMethodBodyScanner to not consider type parameter annotations.
Configuration menu - View commit details
-
Copy full SHA for 5809152 - Browse repository at this point
Copy the full SHA 5809152View commit details -
Avoid dataflow analysis for generic parameters (#2908)
This avoids unnecessarily running the reflection methodbody scanner in the linker, and the dataflow analysis in the analyzer, for methods that were previously only triggering dataflow analysis due to annotated generic parameters. This eliminates unnecessary warnings for reflection access to compiler-generated code.
Configuration menu - View commit details
-
Copy full SHA for dbb51b0 - Browse repository at this point
Copy the full SHA dbb51b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for d434293 - Browse repository at this point
Copy the full SHA d434293View commit details
Commits on Jul 25, 2022
-
DynamicallyAccessedMembers CodeFix (#2890)
* Create infrastructure for CodeFixers that will generate attribute flags for DynamicallyAccessedMembers (DAM) trimmer warnings. This commit includes fixers for the warnings `DynamicallyAccessedMembersMismatchParameterTargetsThisParameter` and `DynamicallyAccessedMembersMismatchFieldTargetsThisParameter`. Additional DiagnosticIds will be supported by future commits. * Create new class for the DAM CodeFixer that does not rely on base class. The DAM warnings require different attribute placement depending on the type of warning that is raised, causing it to differ from the implementation of the base class. * Added a test file specifically for the DAM CodeFixer, include tests for the functional fixes as well as tests for fixes that will soon be implemented. * Converted all test cases within DAM to use string literals Co-authored-by: Andy Gocke <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8062da2 - Browse repository at this point
Copy the full SHA 8062da2View commit details -
Update dependencies from https://github.com/dotnet/runtime build 2022…
…0724.4 (#2913) [main] Update dependencies from dotnet/runtime
Configuration menu - View commit details
-
Copy full SHA for 8ffd83c - Browse repository at this point
Copy the full SHA 8ffd83cView commit details
Commits on Jul 26, 2022
-
Map type parameters for static closures (#2899)
This discovers type parameter mappings between generic type parameters and static closures which reference them. It detects the closure environment by scanning for stsfld instructions which reference generic closure types. There may be multiple methods associated with the same static closure, so this case doesn't produce warnings. This also fixes an unrelated issue where in Release mode, the compiler can generate struct closure environments that will never get instantiated via a ctor call. A new testcase runs the CompilerGeneratedTypes tests in Release mode to cover this.
Configuration menu - View commit details
-
Copy full SHA for b883ec2 - Browse repository at this point
Copy the full SHA b883ec2View commit details -
Synchronize file type between analyzer and linker (#2917)
Makes it so user does not have to zip their dumped dependencies file before running the analyzer and updates documentation to reflect the change.
Configuration menu - View commit details
-
Copy full SHA for 907020b - Browse repository at this point
Copy the full SHA 907020bView commit details -
Add more tests for parameter dataflow (#2918)
Add tests for some edge cases due to the analyzer not treating captured parameters as hoisted variables like the linker does. Currently the analyzer doesn't detect hoisted parameters, and it will treat them like normal parameters - warning if a parameter is assigned a value with an annotation that doesn't match the parameter annotation. The linker will treat captured parameters the same as other captured variables, tracking all values that get assigned. So there is a subtle difference in the warning behavior: - Linker won't warn on assignment to annotated captured parameter, but analyzer will. - Linker will produce dataflow warnings for all values assigned to a captured parameter, but analyzer will not.
Configuration menu - View commit details
-
Copy full SHA for 145f0d2 - Browse repository at this point
Copy the full SHA 145f0d2View commit details
Commits on Jul 27, 2022
-
Configuration menu - View commit details
-
Copy full SHA for f09bacf - Browse repository at this point
Copy the full SHA f09bacfView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 31a57b5...f09bacf