Browse Source

Fix bug in decompilation of single fields.

pull/1030/head
Siegfried Pammer 7 years ago
parent
commit
4756f40393
  1. 2
      ICSharpCode.Decompiler/TypeSystem/MetadataAssembly.cs
  2. 2
      ILSpy/Languages/CSharpLanguage.cs

2
ICSharpCode.Decompiler/TypeSystem/MetadataAssembly.cs

@ -460,7 +460,7 @@ namespace ICSharpCode.Decompiler.TypeSystem @@ -460,7 +460,7 @@ namespace ICSharpCode.Decompiler.TypeSystem
/// <remarks>
/// * Types are resolved to their definition, as IType does not implement ISymbol.
/// * types without definition will resolve to <c>null</c>
/// * use ResolveType() properly resolve types
/// * use ResolveType() to properly resolve types
/// * When resolving methods, varargs signatures are not expanded.
/// * use ResolveMethod() instead to get an IMethod instance suitable for call-sites
/// * May return specialized members, where generics are involved.

2
ILSpy/Languages/CSharpLanguage.cs

@ -215,7 +215,7 @@ namespace ICSharpCode.ILSpy @@ -215,7 +215,7 @@ namespace ICSharpCode.ILSpy
WriteCode(output, options.DecompilerSettings, decompiler.Decompile(field.MetadataToken), decompiler.TypeSystem);
} else {
var members = CollectFieldsAndCtors(field.DeclaringTypeDefinition, field.IsStatic);
decompiler.AstTransforms.Add(new SelectFieldTransform(field));
decompiler.AstTransforms.Add(new SelectFieldTransform(decompiler.TypeSystem.ResolveAsField(field.MetadataToken)));
WriteCode(output, options.DecompilerSettings, decompiler.Decompile(members), decompiler.TypeSystem);
}
}

Loading…
Cancel
Save