Browse Source

Fix #1945, fix #1851: NRE when generating sequence points for a method containing a stackalloc expression.

pull/1967/head
Siegfried Pammer 5 years ago
parent
commit
69cad7527e
  1. 5
      ICSharpCode.Decompiler/CSharp/ExpressionBuilder.cs

5
ICSharpCode.Decompiler/CSharp/ExpressionBuilder.cs

@ -1178,7 +1178,10 @@ namespace ICSharpCode.Decompiler.CSharp @@ -1178,7 +1178,10 @@ namespace ICSharpCode.Decompiler.CSharp
if (countOffsetInst == byteOffsetInst) {
return EnsureIntegerType(byteOffsetExpr);
} else {
return EnsureIntegerType(Translate(countOffsetInst));
TranslatedExpression expr = Translate(countOffsetInst);
// Keep original ILInstruction as annotation
expr.Expression.RemoveAnnotations<ILInstruction>();
return EnsureIntegerType(expr.WithILInstruction(byteOffsetInst));
}
}

Loading…
Cancel
Save