@@ -4419,15 +4419,15 @@ void InterpCompiler::EmitCall(CORINFO_RESOLVED_TOKEN* pConstrainedToken, bool re
44194419 bool isMarshaledPInvoke = isPInvoke && m_compHnd->pInvokeMarshalingRequired (callInfo.hMethod , &callInfo.sig );
44204420
44214421 // Process sVars
4422- int numArgsFromStack = callInfo.sig .numArgs + (newObj ? 0 : callInfo.sig .hasThis ());
4422+ int numArgsFromStack = callInfo.sig .numArgs + (newObj ? 0 : callInfo.sig .hasImplicitThis ());
44234423 int newObjThisArgLocation = newObj && !doCallInsteadOfNew ? 0 : INT_MAX;
44244424 int numArgs = numArgsFromStack + (newObjThisArgLocation == 0 );
44254425
44264426 int extraParamArgLocation = INT_MAX;
44274427 int continuationArgLocation = INT_MAX;
44284428 if (callInfo.sig .hasTypeArg ())
44294429 {
4430- extraParamArgLocation = callInfo.sig .hasThis () ? 1 : 0 ;
4430+ extraParamArgLocation = callInfo.sig .hasImplicitThis () ? 1 : 0 ;
44314431 numArgs++;
44324432 }
44334433
@@ -4471,7 +4471,7 @@ void InterpCompiler::EmitCall(CORINFO_RESOLVED_TOKEN* pConstrainedToken, bool re
44714471 else
44724472 {
44734473 int iCurrentStackArg = iLogicalArg - numArgsFromStack;
4474- if (iLogicalArg != 0 || !callInfo.sig .hasThis () || newObj)
4474+ if (iLogicalArg != 0 || !callInfo.sig .hasImplicitThis () || newObj)
44754475 {
44764476 CORINFO_CLASS_HANDLE classHandle;
44774477
@@ -6992,6 +6992,10 @@ void InterpCompiler::GenerateCode(CORINFO_METHOD_INFO* methodInfo)
69926992 CORINFO_RESOLVED_TOKEN constrainedToken;
69936993 CORINFO_CALL_INFO callInfo;
69946994 const uint8_t *codeEnd;
6995+ if (m_methodInfo->args .hasExplicitThis ())
6996+ {
6997+ BADCODE (" Explicit this is only supported for calls" );
6998+ }
69956999 int numArgs = m_methodInfo->args .hasThis () + m_methodInfo->args .numArgs ;
69967000 bool emittedBBlocks, linkBBlocks, needsRetryEmit;
69977001 m_pILCode = methodInfo->ILCode ;
0 commit comments