anchor.diff:        // Get items & generate output
         try
           Some (info.GetDeclarations(None, pos, lineStr, (longName, residue), fun (_,_) -> false)
  -              |> Async.RunSynchronously)
  +              |> Async.RunSynchronously, residue)
         with :? System.TimeoutException as e ->
                    None) info
   
  
positive.code:               let decls = agent.DoCompletion(opts, pos, state.Files.[file].[line], timeout)
  
                match decls with
                | Some decls ->
                    match state.OutputMode with
                    | Text ->
                        printfn "DATA: completion"
  
negative.code:       // Otherwise try to get type information & run the request
        agent.PostAndReply(fun r -> GetTypeCheckInfo(opts, time, r))
  
    /// Invokes dot-completion request. Returns possible completions
    /// and current residue.
    member x.DoCompletion(opts : RequestOptions, ((line, column) as pos), lineStr, time) : Option<DeclarationSet * String> =
      let info = x.GetTypeCheckInfo(opts, time)
      Option.bind (fun (info: TypeCheckResults) ->
        // Get the long identifier before the current location
  