Browse Source

Use same resolver context as containing method, when decompiling lambdas.

pull/728/merge
Siegfried Pammer 10 years ago
parent
commit
225208413d
  1. 3
      ICSharpCode.Decompiler/CSharp/ExpressionBuilder.cs

3
ICSharpCode.Decompiler/CSharp/ExpressionBuilder.cs

@ -871,8 +871,7 @@ namespace ICSharpCode.Decompiler.CSharp @@ -871,8 +871,7 @@ namespace ICSharpCode.Decompiler.CSharp
AnonymousMethodExpression ame = new AnonymousMethodExpression();
ame.Parameters.AddRange(MakeParameters(method, function));
ame.HasParameterList = true;
var context = new SimpleTypeResolveContext(method);
StatementBuilder builder = new StatementBuilder(typeSystem.GetSpecializingTypeSystem(context), context, method);
StatementBuilder builder = new StatementBuilder(typeSystem.GetSpecializingTypeSystem(new SimpleTypeResolveContext(method)), this.decompilationContext, method);
var body = builder.ConvertAsBlock(function.Body);
bool isLambda = false;
bool isMultiLineLambda = false;

Loading…
Cancel
Save