Browse Source

Disable transform for Span<T> initialization from field with RVA if "ArrayInitializers" setting is disabled.

https://github.com/ashmind/SharpLab/issues/542
pull/2145/head
Daniel Grunwald 6 years ago
parent
commit
5bd8c69a48
  1. 2
      ICSharpCode.Decompiler/IL/Transforms/TransformArrayInitializers.cs

2
ICSharpCode.Decompiler/IL/Transforms/TransformArrayInitializers.cs

@ -116,6 +116,8 @@ namespace ICSharpCode.Decompiler.IL.Transforms
internal static bool TransformSpanTArrayInitialization(NewObj inst, StatementTransformContext context, out Block block) internal static bool TransformSpanTArrayInitialization(NewObj inst, StatementTransformContext context, out Block block)
{ {
block = null; block = null;
if (!context.Settings.ArrayInitializers)
return false;
if (MatchSpanTCtorWithPointerAndSize(inst, context, out var elementType, out var field, out var size)) if (MatchSpanTCtorWithPointerAndSize(inst, context, out var elementType, out var field, out var size))
{ {
if (field.HasFlag(System.Reflection.FieldAttributes.HasFieldRVA)) if (field.HasFlag(System.Reflection.FieldAttributes.HasFieldRVA))

Loading…
Cancel
Save