anchor.diff:              match lid with 
               | _tn:: rest when not (isNil rest) ->
                   let tcrefs = LookupTypeNameInEntityMaybeHaveArity (ncenv.amap, id.idRange, ad, id.idText, TypeNameResolutionStaticArgsInfo.Indefinite, modref)
  +                if List.isEmpty tcrefs then NoResultsOrUsefulErrors else
                   let tcrefs = tcrefs |> List.map (fun tcref -> (ResolutionInfo.Empty,tcref))
                   let tyconSearch = ResolveLongIdentInTyconRefs ncenv nenv LookupKind.RecdField  (depth+1) m ad rest typeNameResInfo id.idRange tcrefs
                   // choose only fields 
  
positive.code:             // Something in a type?
              let tyconSearch = 
                  let tcrefs = LookupTypeNameInEntityMaybeHaveArity (ncenv.amap, id.idRange, ad, id.idText, (if isNil rest then typeNameResInfo.StaticArgsInfo else TypeNameResolutionStaticArgsInfo.Indefinite), modref)
                  let tcrefs = tcrefs |> List.map (fun tcref -> (resInfo,tcref))
                  if not (isNil rest) then 
                      let tcrefs = CheckForTypeLegitimacyAndMultipleGenericTypeAmbiguities (tcrefs, TypeNameResolutionInfo (ResolveTypeNamesToTypeRefs,TypeNameResolutionStaticArgsInfo.Indefinite), PermitDirectReferenceToGeneratedType.No, unionRanges m id.idRange)
  
negative.code:             match lid with 
              | tn :: rest when not (isNil rest) ->
                  let tcrefs = LookupTypeNameInEnvNoArity fullyQualified tn.idText nenv
                  if List.isEmpty tcrefs then NoResultsOrUsefulErrors else
                  let tcrefs = tcrefs |> List.map (fun tcref -> (ResolutionInfo.Empty,tcref))
                  ResolveLongIdentInTyconRefs ncenv nenv LookupKind.Pattern 1 tn.idRange ad rest numTyArgsOpt tn.idRange tcrefs 
              | _ -> 
  