diff options
author | Michal Strehovský <MichalStrehovsky@users.noreply.github.com> | 2018-11-15 14:08:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-15 14:08:27 +0100 |
commit | 4b01ac0d72d2b271a3f664d1fe3761287f5efc6a (patch) | |
tree | ce702363d5b1a61f3783f8fc1e27dc182f71f8d6 /src/vm/comdelegate.cpp | |
parent | bf1a55fab3f07771632a76d52c6d9287a339bb79 (diff) | |
download | coreclr-4b01ac0d72d2b271a3f664d1fe3761287f5efc6a.tar.gz coreclr-4b01ac0d72d2b271a3f664d1fe3761287f5efc6a.tar.bz2 coreclr-4b01ac0d72d2b271a3f664d1fe3761287f5efc6a.zip |
Allow supressing exceptions in diamond inheritance cases (#20458)
Diffstat (limited to 'src/vm/comdelegate.cpp')
-rw-r--r-- | src/vm/comdelegate.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vm/comdelegate.cpp b/src/vm/comdelegate.cpp index 124ebc4c6d..6ffa26709c 100644 --- a/src/vm/comdelegate.cpp +++ b/src/vm/comdelegate.cpp @@ -1663,7 +1663,7 @@ FCIMPL3(PCODE, COMDelegate::AdjustTarget, Object* refThisUNSAFE, Object* targetU // <TODO>it looks like we need to pass an ownerType in here. // Why can we take a delegate to an interface method anyway? </TODO> // - pCorrectedMethod = pMTTarg->FindDispatchSlotForInterfaceMD(pCorrectedMethod).GetMethodDesc(); + pCorrectedMethod = pMTTarg->FindDispatchSlotForInterfaceMD(pCorrectedMethod, TRUE /* throwOnConflict */).GetMethodDesc(); _ASSERTE(pCorrectedMethod != NULL); } } @@ -1836,7 +1836,7 @@ FCIMPL3(void, COMDelegate::DelegateConstruct, Object* refThisUNSAFE, Object* tar // <TODO>it looks like we need to pass an ownerType in here. // Why can we take a delegate to an interface method anyway? </TODO> // - MethodDesc * pDispatchSlotMD = pMTTarg->FindDispatchSlotForInterfaceMD(pMeth).GetMethodDesc(); + MethodDesc * pDispatchSlotMD = pMTTarg->FindDispatchSlotForInterfaceMD(pMeth, TRUE /* throwOnConflict */).GetMethodDesc(); if (pDispatchSlotMD == NULL) { COMPlusThrow(kArgumentException, W("Arg_DlgtTargMeth")); |