anchor.diff:              // 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)
  +                if List.isEmpty tcrefs then NoResultsOrUsefulErrors else
                   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)
  
positive.code:           // This seems strange since we would expect in the vast majority of cases tcrefs is empty here.
            let tyconSearch ad = 
                let tcrefs = LookupTypeNameInEnvNoArity fullyQualified id.idText nenv
                let tcrefs = tcrefs |> List.map (fun tcref -> (resInfo,tcref))
                let tcrefs = CheckForTypeLegitimacyAndMultipleGenericTypeAmbiguities (tcrefs, TypeNameResolutionInfo.ResolveToTypeRefs (TypeNameResolutionStaticArgsInfo.Indefinite), PermitDirectReferenceToGeneratedType.No, unionRanges m id.idRange)
                ResolveLongIdentInTyconRefs ncenv nenv LookupKind.Expr 1 m ad rest typeNameResInfo id.idRange tcrefs
  
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 
              | _ -> 
  