anchor.diff:              infoReader.GetEntireTypeHierarchy(AllowMultiIntfInstantiations.Yes, m, ty)
               |> List.collect (fun ty ->
                   let g = infoReader.g
  -                if isAppTy g ty then
  -                    let tcref = tcrefOfAppTy g ty
  +                match tryDestAppTy g ty with
  +                | ValueSome tcref ->
                       let extValRefs = nenv.eIndexedExtensionMembers.Find tcref
                       SelectMethInfosFromExtMembers infoReader optFilter ty  m extValRefs
  -                else [])
  +                | _ -> [])
           extMemsDangling @ extMemsFromHierarchy
   
   /// Get all the available methods of a type (both intrinsic and extension)
  
positive.code:     Item.Types (x.DisplayName, [FreshenTycon ncenv m x])
  
  let ItemOfTy g x =
      let nm = if isAppTy g x then (tcrefOfAppTy g x).DisplayName else "?"
      Item.Types (nm, [x])
  
  // Filter out 'PrivateImplementationDetail' classes
  
negative.code:         let extMemsFromHierarchy =
              infoReader.GetEntireTypeHierarchy(AllowMultiIntfInstantiations.Yes, m, ty)
              |> List.collect (fun ty ->
                   match tryDestAppTy g ty with
                   | ValueSome tcref ->
                      let extMemInfos = nenv.eIndexedExtensionMembers.Find tcref
                      SelectPropInfosFromExtMembers infoReader ad optFilter ty m extMemInfos
                   | _ -> [])
  
          extMemsDangling @ extMemsFromHierarchy
  
  