anchor.diff:          | "toString" -> toString com info args.Head |> Some
           | "toEnum" -> args.Head |> Some
           | "createDictionary" ->
  -            makeDictionary r typ false info.methodTypeArgs.Head args |> Some
  +            makeDictionaryOrHashSet r typ "Map" false info.methodTypeArgs.Head args |> Some
           | "createSet" ->
               makeMapOrSetCons com info "Set" args |> Some
           // Ignore: wrap to keep Unit type (see Fable2Babel.transformFunction)
  
positive.code:             | Some(Fable.ExtendedNumber _) ->
                  emitNoInfo "(x,y) => x.CompareTo(y)" []
              | Some(Fable.DeclaredType(ent, _))
                  when ent.HasInterface "System.IComparable"
                      && ent.FullName <> "System.TimeSpan"
                      && ent.FullName <> "System.DateTime" ->
                  emitNoInfo "(x,y) => x.CompareTo(y)" []
              | Some _ | None ->
                  makeCoreRef "Util" (Some "compare")
  
negative.code:         CoreLibCall(modName, Some "create", false, args)
          |> makeCall i.range i.returnType
  
      let makeDictionaryOrHashSet r t modName forceFSharp typArg args =
          let makeFSharp typArg args =
              match args with
              | [iterable] -> [iterable; makeComparer (Some typArg)]
              | args -> args
              |> ccall_ r t modName "create"
          if forceFSharp
          then makeFSharp typArg args
          else
              match typArg with
              | Fable.ExtendedNumber _ | Fable.Array _ | Fable.Tuple _ ->
                  makeFSharp typArg args
              | Fable.DeclaredType(ent, _) when ent.HasInterface "System.IComparable"
                      && ent.FullName <> "System.TimeSpan"
                      && ent.FullName <> "System.Guid" ->
                  makeFSharp typArg args
              | _ ->
                  GlobalCall(modName, None, true, args) |> makeCall r t
  
  module AstPass =
      open Util
  