anchor.diff:              for iface in e.DeclaredInterfaces do
                   yield! getInterfaceMembers iface.TypeDefinition
               yield! e.MembersFunctionsAndValues |> Seq.filter (fun m -> 
  -                       let v = m.DisplayName
  -                       // FIXME: temporary filter out get/set properties because combined properties have also been included
  -                       not (v.StartsWith "get_" || v.StartsWith "set_"))
  +                       // Use this hack when FCS doesn't return enough information on .NET properties
  +                       e.IsFSharp || not m.IsProperty)
            }
   
       let countInterfaceMembers e =
  
positive.code:             let parArgs = getParamArgs argInfos
              match v.IsMember, v.IsInstanceMember, v.LogicalName, v.DisplayName with
              // Constructors
              | _, _, ".ctor", _ -> "new" + parArgs 
              // Properties (skipping arguments)
              | _, true, _, name when v.IsProperty -> name
              // Ordinary instance members
  
negative.code:               if v.IsDispatchSlot then () ]
  
          let argInfos = 
              v.CurriedParameterGroups |> Seq.map Seq.toList |> Seq.toList 
              
          let retType = v.ReturnParameter.Type
  
          let argInfos, retType = 
              match argInfos, v.IsGetterMethod, v.IsSetterMethod with
              | [ AllAndLast(args, last) ], _, true -> [ args ], Some last.Type
              | _, _, true -> argInfos, None
              | [[]], true, _ -> [], Some retType
              | _, _, _ -> argInfos, Some retType
  
          let retType = defaultArg (Option.map (formatType ctx) retType) "unit"
          let usage = buildUsage argInfos
  
          let isSetterMethod (v: FSharpMemberFunctionOrValue) =
              v.IsSetterMethod
  
          let isGetterMethod (v: FSharpMemberFunctionOrValue) =
              v.IsGetterMethod
  
          ctx.Writer.WriteLine("")
          ctx.Writer.Write("member ")
          for modifier in modifiers do
              ctx.Writer.Write("{0} ", modifier)
          ctx.Writer.Write("{0}.", ctx.ObjectIdent)
          
          if isSetterMethod v then
              ctx.Writer.WriteLine(usage)
              ctx.Writer.Indent ctx.Indentation
              match getParamArgs argInfos with
              | "" | "()" ->
                  ctx.Writer.WriteLine("with set v: unit = ")
              | args ->
                  ctx.Writer.WriteLine("with set {0} v: unit = ", args)
              ctx.Writer.Indent ctx.Indentation
              for line in ctx.MethodBody do
                  ctx.Writer.WriteLine(line)
              ctx.Writer.Unindent ctx.Indentation
              ctx.Writer.Unindent ctx.Indentation
          elif isGetterMethod v then
              ctx.Writer.WriteLine(usage)
              ctx.Writer.Indent ctx.Indentation
              match getParamArgs argInfos with
              | "" ->
                  ctx.Writer.WriteLine("with get () = ")
              | args ->
                  ctx.Writer.WriteLine("with get {0} = ", args)
              ctx.Writer.Indent ctx.Indentation
              for line in ctx.MethodBody do
                  ctx.Writer.WriteLine(line)
              ctx.Writer.Unindent ctx.Indentation
              ctx.Writer.Unindent ctx.Indentation
          else
              ctx.Writer.Write(usage)
  