@@ -4993,55 +4993,7 @@ HRESULT CLR_RT_Assembly::ResolveAllocateGenericTypeStaticFields()
49934993 // initialize the storage: call InitializeReference for that field def (ownerAsm context)
49944994 const CLR_RECORD_FIELDDEF *pFd = ownerAsm->GetFieldDef (fieldIndex);
49954995
4996- CLR_RT_SignatureParser parser{};
4997- parser.Initialize_FieldDef (ownerAsm, pFd);
4998-
4999- CLR_RT_SignatureParser::Element element{};
5000-
5001- NANOCLR_CHECK_HRESULT (parser.Advance (element));
5002-
5003- if (element.Levels > 0 )
5004- {
5005- // this is an array
5006- pHeap[staticField].SetDataId (CLR_RT_HEAPBLOCK_RAW_ID (DATATYPE_OBJECT, CLR_RT_HeapBlock::HB_Alive, 1 ));
5007- pHeap[staticField].ClearData ();
5008-
5009- NanoCLRDataType dt;
5010- CLR_RT_TypeDef_Index realTypeDef{};
5011- dt = element.DataType ;
5012- realTypeDef.data = element.Class .data ;
5013-
5014- if (element.DataType == DATATYPE_CLASS || element.DataType == DATATYPE_VALUETYPE)
5015- {
5016- realTypeDef = element.Class ;
5017- }
5018- if (element.DataType == DATATYPE_VAR)
5019- {
5020- genericTypeInstance.assembly ->FindGenericParamAtTypeSpec (
5021- genericTypeInstance.data ,
5022- element.GenericParamPosition ,
5023- realTypeDef,
5024- dt);
5025-
5026- // goto process_datatype;
5027- }
5028- else if (element.DataType == DATATYPE_MVAR)
5029- {
5030- _ASSERTE (true );
5031-
5032- // goto process_datatype;
5033- }
5034- else
5035- {
5036- _ASSERTE (true );
5037- }
5038-
5039- CLR_RT_HeapBlock_Array::CreateInstance (pHeap[staticField], 0 , realTypeDef);
5040- }
5041- else
5042- {
5043- g_CLR_RT_ExecutionEngine.InitializeReference (pHeap[staticField], pFd, ownerAsm, &genericTypeInstance);
5044- }
4996+ g_CLR_RT_ExecutionEngine.InitializeReference (pHeap[staticField], pFd, ownerAsm, &genericTypeInstance);
50454997 }
50464998
50474999 // store in typespec crossref (this storage is per-assembly typespec)
0 commit comments