anchor.diff:  type Mock =
       /// Verifies expected count against instance member invocations on specified mock
       static member Verify(expr:Expr, expectedCalls:int) =
  -        let (x,mi,args) = toCallUntyped expr |> function Some(x) -> x | None -> failwith "Bang"
  -        let mock = x.EvalUntyped()
  -        let recorded =
  -            match mock with
  -            | :? IRecorder as recorder -> recorder
  +        let (x,mi,args) = toCallUntyped expr
  +        let mock =
  +            match x.EvalUntyped() with
  +            | :? IMockObject as mock -> mock
               | _ -> failwith "Object instance is not a mock"
           let matches argType arg actual =
               match arg with
  
positive.code:                 then typeof<obj>, [|abstractType|]
                  else abstractType, [||]
              let attributes = TypeAttributes.Public ||| TypeAttributes.Class
              let interfaces = [|yield typeof<IRecorder>; yield! interfaces|]
              moduleBuilder.DefineType(stubName, attributes, parent, interfaces)
          /// Field settings
          let fields = FieldAttributes.Private ||| FieldAttributes.InitOnly 
  
negative.code:                 f.Invoke(p,[|actual|]) :?> bool
              | PredUntyped(p) -> (p :?> Func<obj,bool>).Invoke(actual)
          let actualCalls = 
              mock.Invocations 
              |> Seq.filter (fun xs -> 
                  let invoked = xs.[0] :?> MethodBase
                  invoked.Name = mi.Name &&
                  invoked.GetParameters().Length = mi.GetParameters().Length &&
                  Array.zip (invoked.GetParameters()) (mi.GetParameters())
                  |> Array.mapi (fun i x -> i,x)
                  |> Array.forall (fun (i,(a,b)) -> 
  