Add support for default interface methods in DispatchProxy (dotnet/corefx#34720)
authorMichal Strehovský <MichalStrehovsky@users.noreply.github.com>
Fri, 15 Feb 2019 10:46:31 +0000 (11:46 +0100)
committerGitHub <noreply@github.com>
Fri, 15 Feb 2019 10:46:31 +0000 (11:46 +0100)
commit4a9113d93067f9e0e0e91a8b8df5ca323dcf8f2f
tree66d45e10e3ffcd7b09ae23250de75f87af4e4805
parent68017af2d46b346b28d63ef6efc7757e0e745690
Add support for default interface methods in DispatchProxy (dotnet/corefx#34720)

The generated dispatch proxy shouldn't try to override non-virtual or final methods.

This also fixes a pre-existing bug where we would try to override static method on interfaces (while C# can't emit them, the CLR has supported them for ages).

Fixes dotnet/coreclrdotnet/corefx#15646.

Commit migrated from https://github.com/dotnet/corefx/commit/89b67cc789c78ceb65bf996969aba6e30b0679d0
src/libraries/System.Reflection.DispatchProxy/src/System/Reflection/DispatchProxyGenerator.cs