repro:
1) Unzip the project from this location: http://sdrv.ms/16hsVFa
2) decompile
3) Choose from the menu "Save Code..."
Result:
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void PreschoolEssentials.Dragging::HandleReleased(PreschoolEssentials.Dragging/Control)
---> System.ArgumentNullException: Value cannot be null.
Parameter name: type
at Mono.Cecil.ByReferenceType..ctor(TypeReference type)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.DoInferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.InferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.DoInferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.InferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.RunInference(ILExpression expr)
at ICSharpCode.Decompiler.ILAst.TypeAnalysis.RunInference()
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, ILAstOptimizationStep abortBeforeStep)
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable1 parameters) at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDefinition methodDef, DecompilerContext context, IEnumerable1 parameters)
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDefinition methodDef, DecompilerContext context, IEnumerable1 parameters) at ICSharpCode.Decompiler.Ast.AstBuilder.CreateMethod(MethodDefinition methodDef) at ICSharpCode.Decompiler.Ast.AstBuilder.AddTypeMembers(TypeDeclaration astType, TypeDefinition typeDef) at ICSharpCode.Decompiler.Ast.AstBuilder.CreateType(TypeDefinition typeDef) at ICSharpCode.Decompiler.Ast.AstBuilder.AddType(TypeDefinition typeDef) at ICSharpCode.ILSpy.CSharpLanguage.<>c__DisplayClasse.<WriteCodeFilesInProject>b__b(IGrouping2 file)
at System.Threading.Tasks.Parallel.<>cDisplayClassf`1.bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>cDisplayClass11.b10(Object param0)
Here is another crash in that code:
repro: 1) Unzip the project from this location: http://sdrv.ms/16hsVFa 2) decompile 3) Choose from the menu "Save Code..."
Result: ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void PreschoolEssentials.Dragging::HandleReleased(PreschoolEssentials.Dragging/Control) ---> System.ArgumentNullException: Value cannot be null. Parameter name: type at Mono.Cecil.ByReferenceType..ctor(TypeReference type) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.DoInferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.InferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.DoInferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.InferTypeForExpression(ILExpression expr, TypeReference expectedType, Boolean forceInferChildren) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.RunInference(ILExpression expr) at ICSharpCode.Decompiler.ILAst.TypeAnalysis.RunInference() at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, ILAstOptimizationStep abortBeforeStep) at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerableb c()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>cDisplayClass11.b 10(Object param0)
1 parameters) at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDefinition methodDef, DecompilerContext context, IEnumerable
1 parameters) --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDefinition methodDef, DecompilerContext context, IEnumerable1 parameters) at ICSharpCode.Decompiler.Ast.AstBuilder.CreateMethod(MethodDefinition methodDef) at ICSharpCode.Decompiler.Ast.AstBuilder.AddTypeMembers(TypeDeclaration astType, TypeDefinition typeDef) at ICSharpCode.Decompiler.Ast.AstBuilder.CreateType(TypeDefinition typeDef) at ICSharpCode.Decompiler.Ast.AstBuilder.AddType(TypeDefinition typeDef) at ICSharpCode.ILSpy.CSharpLanguage.<>c__DisplayClasse.<WriteCodeFilesInProject>b__b(IGrouping
2 file) at System.Threading.Tasks.Parallel.<>cDisplayClassf`1.