Browse Source

Fix build.

pull/1167/head
Siegfried Pammer 7 years ago
parent
commit
0a992d2158
  1. 16
      ICSharpCode.Decompiler/CSharp/Transforms/PatternStatementTransform.cs

16
ICSharpCode.Decompiler/CSharp/Transforms/PatternStatementTransform.cs

@ -703,9 +703,19 @@ namespace ICSharpCode.Decompiler.CSharp.Transforms
if (!m.Success) if (!m.Success)
return false; return false;
Expression fieldExpression = m.Get<Expression>("field").Single(); Expression fieldExpression = m.Get<Expression>("field").Single();
if (fieldExpression is IdentifierExpression identifier && identifier.Identifier != ev.Name // field name must match event name
&& fieldExpression is MemberReferenceExpression memberRef && memberRef.MemberName != ev.Name) switch (fieldExpression) {
return false; // field name must match event name case IdentifierExpression identifier:
if (identifier.Identifier != ev.Name)
return false;
break;
case MemberReferenceExpression memberRef:
if (memberRef.MemberName != ev.Name)
return false;
break;
default:
return false;
}
if (!ev.ReturnType.IsMatch(m.Get("type").Single())) if (!ev.ReturnType.IsMatch(m.Get("type").Single()))
return false; // variable types must match event type return false; // variable types must match event type
var combineMethod = m.Get<AstNode>("delegateCombine").Single().Parent.GetSymbol() as IMethod; var combineMethod = m.Get<AstNode>("delegateCombine").Single().Parent.GetSymbol() as IMethod;

Loading…
Cancel
Save