anchor.diff:      [<Extension>]
       static member DotNetExtensionMeth(instance : System.DateTime) =
           MyTy.GetCallerMemberName()
  +
  +type IMyInterface =
  +    abstract member MyInterfaceMethod : unit -> string option
  +
  +[<AbstractClass>]
  +type MyAbstractTy() =
  +    abstract MyAbstractMethod : unit -> string option
   
   module Program =
       type System.String with
  
positive.code: 
          MyTy.Check(1 +++ 2 |> snd, Some("op_PlusPlusPlus"), "operator")
  
          0
negative.code:     let typeLetFuncNested () =
          let nestedFunc () = MyTy.GetCallerMemberName()
          nestedFunc ()
      let anonymousLambda = (fun () -> MyTy.GetCallerMemberName()) ()
      let asyncVal = async { return MyTy.GetCallerMemberName() } |> Async.RunSynchronously
      do
          MyTy.Check(MyTy.GetCallerMemberName(), Some(".ctor"), "primary ctor")
  
  