while '[' in FieldName and not Pcd.IsArray():\r
FieldName = FieldName.rsplit('[', 1)[0]\r
CApp = CApp + ' __FLEXIBLE_SIZE(*Size, %s, %s, %d); // From %s Line %d Value %s\n' % (Pcd.DatumType, FieldName.strip("."), Array_Index + 1, FieldList[FieldName_ori][1], FieldList[FieldName_ori][2], FieldList[FieldName_ori][0])\r
+ flexisbale_size_statement_cache = set()\r
for skuname in Pcd.SkuOverrideValues:\r
if skuname == TAB_COMMON:\r
continue\r
if not FieldList:\r
continue\r
for FieldName in FieldList:\r
+ fieldinfo = tuple(FieldList[FieldName])\r
+ if fieldinfo in flexisbale_size_statement_cache:\r
+ continue\r
+ flexisbale_size_statement_cache.add(fieldinfo)\r
FieldName = "." + FieldName\r
IsArray = _IsFieldValueAnArray(FieldList[FieldName.strip(".")][0])\r
if IsArray and not (FieldList[FieldName.strip(".")][0].startswith('{GUID') and FieldList[FieldName.strip(".")][0].endswith('}')):\r