diff --git a/src/Compilers/Core/Portable/PEWriter/MetadataWriter.cs b/src/Compilers/Core/Portable/PEWriter/MetadataWriter.cs index 21c94065a09e0..04e2aa2848d2d 100644 --- a/src/Compilers/Core/Portable/PEWriter/MetadataWriter.cs +++ b/src/Compilers/Core/Portable/PEWriter/MetadataWriter.cs @@ -111,7 +111,7 @@ protected MetadataWriter( // EDMAURER provide some reasonable size estimates for these that will avoid // much of the reallocation that would occur when growing these from empty. - _signatureIndex = new Dictionary>>(module.HintNumberOfMethodDefinitions, ReferenceEqualityComparer.Instance); //ignores field signatures + _signatureIndex = new SegmentedDictionary>>(module.HintNumberOfMethodDefinitions, ReferenceEqualityComparer.Instance); //ignores field signatures this.Context = context; this.messageProvider = messageProvider; @@ -443,7 +443,7 @@ private bool IsMinimalDelta private readonly Dictionary _fieldSignatureIndex = new Dictionary(ReferenceEqualityComparer.Instance); // We need to keep track of both the index of the signature and the actual blob to support VB static local naming scheme. - private readonly Dictionary>> _signatureIndex; + private readonly SegmentedDictionary>> _signatureIndex; private readonly Dictionary _marshallingDescriptorIndex = new Dictionary(); protected readonly List methodImplList = new List();