diff --git a/ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs b/ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs index f0768e59b..3f0d4e74e 100644 --- a/ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs +++ b/ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs @@ -1076,7 +1076,7 @@ namespace ICSharpCode.Decompiler.CSharp // Field data as specified in II.16.3.2 of ECMA-335 6th edition: // .data I_X = int32(123) // .field public static int32 _x at I_X - var initVal = fieldDefinition.GetInitialValue(typeSystem.ModuleDefinition.Reader); + var initVal = fieldDefinition.GetInitialValue(typeSystem.ModuleDefinition.Reader, TypeSystem); var message = string.Format(" Not supported: data({0}) ", BitConverter.ToString(initVal.ReadBytes(initVal.RemainingBytes)).Replace('-', ' ')); ((FieldDeclaration)fieldDecl).Variables.Single().AddChild(new Comment(message, CommentType.MultiLine), Roles.Comment); } diff --git a/ICSharpCode.Decompiler/SRMExtensions.cs b/ICSharpCode.Decompiler/SRMExtensions.cs index 105038c63..c621bfb99 100644 --- a/ICSharpCode.Decompiler/SRMExtensions.cs +++ b/ICSharpCode.Decompiler/SRMExtensions.cs @@ -338,7 +338,7 @@ namespace ICSharpCode.Decompiler if (!field.HasFlag(FieldAttributes.HasFieldRVA) || field.GetRelativeVirtualAddress() == 0) return default; int rva = field.GetRelativeVirtualAddress(); - int size = field.DecodeSignature(new FieldValueSizeDecoder(resolver), default); + int size = field.DecodeSignature(new FieldValueSizeDecoder(typeSystem), default); return pefile.GetSectionData(rva).GetReader(0, size); }