When we have profile data we can have cross module references in our ZapSig's when...
authorBrian Sullivan <briansul@microsoft.com>
Thu, 20 Apr 2017 22:53:19 +0000 (15:53 -0700)
committerBrian Sullivan <briansul@microsoft.com>
Thu, 20 Apr 2017 22:53:19 +0000 (15:53 -0700)
We should return a null TypeHandle to indicate failure so that we don't attempt to add generic types/methods
that have cross module references.  (i.e. MyList<System.Guid> )

src/vm/siginfo.cpp

index b9955ec..82aef45 100644 (file)
@@ -1199,7 +1199,10 @@ TypeHandle SigPointer::GetTypeHandleThrowing(
             
             PREFIX_ASSUME(pZapSigContext != NULL);
             pModule = pZapSigContext->GetZapSigModule()->GetModuleFromIndex(ix);
-            if (pModule != NULL)
+
+            // For ReadyToRunCompilation we return a null TypeHandle when we reference a non-local module
+            //
+            if ((pModule != NULL) && pModule->IsInCurrentVersionBubble())
             {
                 thRet = psig.GetTypeHandleThrowing(pModule, 
                                                    pTypeContext,