anchor.diff:      | "Equals", Some x, [y] | "Equals", None, [x; y] ->
           makeEqOp r x y BinaryEqual |> Some
       | "Equals", Some x, [y; kind] | "Equals", None, [x; y; kind] ->
  -        let left = Helper.LibCall(com, "String", "compareWith", Number(Int32, NumberInfo.Empty), [x; y; kind])
  +        let left = Helper.LibCall(com, "String", "compareWith", Int32.Number, [x; y; kind])
           makeEqOp r left (makeIntConst 0) BinaryEqual |> Some
       | "GetEnumerator", Some c, _ -> stringToCharSeq c |> getEnumerator com r t |> Some
       | ("Contains"|"StartsWith"|"EndsWith" as meth), Some c, arg::_ ->
  
positive.code:             match args.Length, last.Type with
              | 7, Number(_, NumberInfo.IsEnum ent) when ent.FullName = "System.DateTimeKind" ->
                  let args = (List.take 6 args) @ [makeIntConst 0; last]
                  let argTypes = (List.take 6 i.SignatureArgTypes) @ [Number(Int32, NumberInfo.Empty); last.Type]
                  Helper.LibCall(com, "Date", "create", t, args, argTypes, ?loc=r) |> Some
              | _ ->
                  Helper.LibCall(com, moduleName, "create", t, args, i.SignatureArgTypes, genArgs=i.GenericArgs, ?loc=r) |> Some
  
negative.code:     | ("PhysicalEquality" | "PhysicalEqualityIntrinsic"), [left; right] ->
          makeEqOp r left right BinaryEqual |> Some
      | ("PhysicalHash" | "PhysicalHashIntrinsic"), [arg] ->
          Helper.LibCall(com, "Util", "physicalHash", Int32.Number, [arg], ?loc=r) |> Some
      | ("GenericEqualityComparer"
      |  "GenericEqualityERComparer"
      |  "FastGenericComparer"
  