Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dotnet/linker
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 978b631
Choose a base ref
...
head repository: dotnet/linker
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1703386
Choose a head ref
  • 18 commits
  • 85 files changed
  • 5 contributors

Commits on Jun 10, 2022

  1. Configuration menu
    Copy the full SHA
    7d6b4c4 View commit details
    Browse the repository at this point in the history
  2. Fix access to derived properties (#2829)

    Where the access calls a getter or setter defined on a base class.
    sbomer authored Jun 10, 2022
    Configuration menu
    Copy the full SHA
    618eb72 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2022

  1. Update dependencies from https://github.com/dotnet/arcade build 20220…

    …613.1 (#2834)
    
    [main] Update dependencies from dotnet/arcade
    dotnet-maestro[bot] authored Jun 13, 2022
    Configuration menu
    Copy the full SHA
    3a515c3 View commit details
    Browse the repository at this point in the history
  2. Update dependencies from https://github.com/dotnet/runtime build 2022…

    …0612.5 (#2835)
    
    [main] Update dependencies from dotnet/runtime
    dotnet-maestro[bot] authored Jun 13, 2022
    Configuration menu
    Copy the full SHA
    f8478b2 View commit details
    Browse the repository at this point in the history
  3. Fix analyzer issues related to visiting assignment targets (#2833)

    * Fix event assignment in analyzer
    
    * Add field test to simulate EmptyTypes in runtime
    
    * Add test for write to captured set-only property
    
    * Add test for #2832
    
    * Avoid visiting captured reference operation
    
    Since we can't detect whether it is used for reading or writing.
    Fixes assignment to captured set-only property and assignment to
    Type.EmptyTypes.
    
    * Cleanup
    
    * PR feedback
    
    - Add more detailed comment
    - Add tests for property instance visiting
    sbomer authored Jun 13, 2022
    Configuration menu
    Copy the full SHA
    bac3887 View commit details
    Browse the repository at this point in the history
  4. Mark all type forwarders used during string->Type resolution (#2836)

    Previously we only marked the type forwarder for the outer-most type (if any), but the same problem can happen with type names in generic arguments. If they are forwarder we need to mark those type forwarders as well.
    
    This change records all type resolutions during the string->Type resolution and then makes sure that all type forwarders used get marked.
    
    Renamed a method on HandleCallAction to make it more descriptive of what it actually does. Also unifies all string->Type resolution into the ReflectionMarker.
    
    Enabled test which has been already added for the bug and added another variation (CreateInstance).
    
    Improved ResultsChecker to include assembly names in validation messages.
    vitek-karas authored Jun 13, 2022
    Configuration menu
    Copy the full SHA
    27b9dd6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    93de720 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2022

  1. Re-add static interface trimming with more testing (#2791)

    Enables more precise removal of static abstract interface methods and adds more tests than previously.
    
    Co-authored-by: Sven Boemer <[email protected]>
    jtschuster and sbomer authored Jun 14, 2022
    Configuration menu
    Copy the full SHA
    ff646e0 View commit details
    Browse the repository at this point in the history
  2. Move the ILLink targets from the SDK repo to the linker repo (#2837)

    In general, a task invocation in MSBuild and the task definition are
    inseparable. Adding parameters to the task will either result in errors
    if the target is updated and too new, or silently skipping the parameter
    if the target is too old.
    
    Best practice is to ship both as a pair to prevent this problem. Testing is
    harder, but we can add some limited testing if necessary to the linker repo.
    agocke authored Jun 14, 2022
    Configuration menu
    Copy the full SHA
    e6685e5 View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2022

  1. Configuration menu
    Copy the full SHA
    2abcee1 View commit details
    Browse the repository at this point in the history
  2. Analyze implicit indexer reference operations (#2839)

    Adds support for `IImplicitIndexerReferenceOperation`, which
    represents an implicit access to an indexer that uses
    `System.Index`. Implicit means that there is no `System.Index`
    accessor in IL, but the compiler supports `System.Index` access
    via an existing indexer (for example one that takes int) for
    types that satisfy certain criteria. See
    https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-8.0/ranges#implicit-index-support
    for details.
    
    This operation only showed up in the CFG with a more recent
    version of the Roslyn APIs, so this includes an update to match
    the one used in dotnet/runtime. This resulted in a few changes to
    the generated code that required tweaking some of the test
    validation:
    
    - Delegate cache fields are emitted. This reuses an existing
    attribute originally designed for mcs, but it has been updated to
    check for these compiler-generated fields.
    
    - `<PrivateImplementationDetails>.ThrowSwitchExpressionException`
    is emitted for an implicit unhandled case in switch
    expressions. This change includes a new attribute to check that
    this is kept in a few of the tests.
    sbomer authored Jun 15, 2022
    Configuration menu
    Copy the full SHA
    226107b View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2022

  1. Configuration menu
    Copy the full SHA
    4bed0da View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1e9494e View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2022

  1. Disable invalid assert and add a test to repro the problem (#2846)

    This is a workaround and test for #2845
    vitek-karas authored Jun 20, 2022
    Configuration menu
    Copy the full SHA
    927156e View commit details
    Browse the repository at this point in the history
  2. Update dependencies from https://github.com/dotnet/runtime build 2022…

    …0619.5 (#2851)
    
    [main] Update dependencies from dotnet/runtime
    dotnet-maestro[bot] authored Jun 20, 2022
    Configuration menu
    Copy the full SHA
    89fdcc2 View commit details
    Browse the repository at this point in the history
  3. Update dependencies from https://github.com/dotnet/arcade build 20220…

    …616.2 (#2850)
    
    [main] Update dependencies from dotnet/arcade
    dotnet-maestro[bot] authored Jun 20, 2022
    Configuration menu
    Copy the full SHA
    f39ce5b View commit details
    Browse the repository at this point in the history
  4. Fix package props for older SDKs (#2848)

    This should keep the existing package override logic working, since
    the current SDK will only import the in-box ILLink.Tasks.props if
    this is not already set.
    sbomer authored Jun 20, 2022
    Configuration menu
    Copy the full SHA
    3f3da1d View commit details
    Browse the repository at this point in the history
  5. Seal classes to silence warnings in Preview 5 (#2852)

    After updating to SDK Preview 5, there are new warnings about being able to seal classes that breaks the build (CA1852). This PR adds the sealed modifier to classes to silence the warnings.
    jtschuster authored Jun 20, 2022
    Configuration menu
    Copy the full SHA
    1703386 View commit details
    Browse the repository at this point in the history
Loading