Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Nov 7, 2023

Backport of #94437 to release/7.0-staging

/cc @lambdageek

Customer Impact

Customers using code that includes rich inheritance hierarchies of interfaces along with static methods in interfaces are able to call interface methods correctly.

Testing

CI and manual testing

Risk

Low.

IMPORTANT: If this backport is for a servicing release, please verify that:

  • The PR target branch is release/X.0-staging, not release/X.0.

  • If the change touches code that ships in a NuGet package, you have added the necessary package authoring and gotten it explicitly reviewed.

@ghost ghost added the area-VM-meta-mono label Nov 7, 2023
@lambdageek lambdageek added the Servicing-consider Issue for next servicing release review label Nov 7, 2023
@lambdageek lambdageek added this to the 7.0.x milestone Nov 7, 2023
Interfaces can have static generic methods, for example.  They don't
have a vt_slot.

When building an IMT slot, we need to collect all the interface
methods that map to a particular IMT slot along with their
implementing vtable entries.  To do that, vt_slot starts at the
interface offset of a particular interface and keeps incrementing as
we iterate over the methods of the interface.  It is crtitical that
vt_slot is accurate - otherwise we may dispatch the interface call to
the wrong virtual method.
the extra_interfaces argument was used to implement additional
interfaces on cross-domain transparent proxy objects.
@github-actions github-actions bot force-pushed the backport/pr-94437-to-release/7.0-staging branch from 2e4d16f to 90b9146 Compare November 7, 2023 17:20
@lambdageek
Copy link
Member

lambdageek commented Nov 7, 2023

I'm expecting the test to fail to build, I think. The .csproj probably needs work

Update: nevermind, verified locally that the test is running and passing.

@rbhanda rbhanda modified the milestones: 7.0.x, 7.0.16 Nov 7, 2023
@rbhanda rbhanda added Servicing-approved Approved for servicing release Servicing-consider Issue for next servicing release review and removed Servicing-consider Issue for next servicing release review Servicing-approved Approved for servicing release labels Nov 7, 2023
@carlossanlop
Copy link
Contributor

Friendly reminder: If you'd like this to be included in the December release, please merge it before Tuesday November 14th EOD (Code Complete).

@lambdageek lambdageek added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Nov 13, 2023
@lambdageek
Copy link
Member

Approved by tactics via email

@lambdageek lambdageek merged commit 87997db into release/7.0-staging Nov 13, 2023
@akoeplinger akoeplinger deleted the backport/pr-94437-to-release/7.0-staging branch November 14, 2023 13:53
@carlossanlop carlossanlop modified the milestones: 7.0.16, 7.0.15 Nov 16, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Dec 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-VM-meta-mono Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants