Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Fix delegate creation for default interface methods on structs#22427

Merged
MichalStrehovsky merged 1 commit into
dotnet:masterfrom
MichalStrehovsky:fix22386
Feb 7, 2019
Merged

Fix delegate creation for default interface methods on structs#22427
MichalStrehovsky merged 1 commit into
dotnet:masterfrom
MichalStrehovsky:fix22386

Conversation

@MichalStrehovsky

Copy link
Copy Markdown
Member

We only need to find an unboxing stub if we resolved the interface to a valuetype method. If we resolved to a default interface method implementation, unboxing is not necessary.

Fixes #22386.

We only need to find an unboxing stub if we resolved the interface to a valuetype method. If we resolved to a default interface method implementation, unboxing is not necessary.
@MichalStrehovsky MichalStrehovsky added this to the 3.0 milestone Feb 5, 2019

@davidwrighton davidwrighton left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good

@MichalStrehovsky

Copy link
Copy Markdown
Member Author

@dotnet-bot test OSX10.12 x64 Checked Innerloop Build and Test

@MichalStrehovsky

Copy link
Copy Markdown
Member Author

Cc @sergiy-k

@MichalStrehovsky MichalStrehovsky merged commit ef48a43 into dotnet:master Feb 7, 2019
@MichalStrehovsky MichalStrehovsky deleted the fix22386 branch February 7, 2019 16:48
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
…t/coreclr#22427)

We only need to find an unboxing stub if we resolved the interface to a valuetype method. If we resolved to a default interface method implementation, unboxing is not necessary.

Commit migrated from dotnet/coreclr@ef48a43
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Invocation of a delegate to a default interface implementation goes into an infinite loop when the underlying instance is a structure

2 participants