anchor.diff:                  emitExpr (ilg, copyOfLocals, [| Quotations.Var("this", lambda); v|]) expectedState body
                   ilg.Emit(OpCodes.Ret) 
   
  -                let ty = lambda.CreateType()
  +                lambda.CreateType() |> ignore
   
                   callSiteIlg.Emit(OpCodes.Newobj, ctor)
                   for (v, f) in fields do
  
positive.code:                           ilg.Emit(OpCodes.Castclass, targetTy)
                                
                          popIfEmptyExpected expectedState
                      | Quotations.DerivedPatterns.SpecificCall <@ (-) @>(None, [t1; t2; t3], [a1; a2]) ->
                          assert(t1 = t2)
                          emit ExpectedStackState.Value a1
                          emit ExpectedStackState.Value a2
  
negative.code: 
                          popIfEmptyExpected expectedState
  
                      | Quotations.DerivedPatterns.SpecificCall <@ (/) @> (None, [t1; t2; _], [a1; a2]) ->
                          assert (t1 = t2)
                          emit ExpectedStackState.Value a1
                          emit ExpectedStackState.Value a2
  