   (let ((force-semantic
          (when ycmd-force-semantic-completion "/s"))
         (text (pcase ycmd--last-status-change
-                ((or `unparsed `parsed) "")
-                (`parsing "*"))))
+                (`unparsed "?")
+                (`parsing "*")
+                (`errored "!")
+                (`parsed ""))))
     (concat " ycmd" force-semantic text)))
 
 ;;;###autoload

              (incf cont)
              (when (< ycmd-startup-timeout cont) ; timeout after specified period
                (set-window-buffer nil proc-buff)
                (error "Server timeout."))))))))))

(defun ycmd--column-in-bytes ()
  "Calculate column offset in bytes for the current position and buffer."

           (content (cons '("event_name" . "FileReadyToParse")
                          (ycmd--standard-content-with-extras
                           buff extra-content))))
      (deferred:$
        ;; try
        (deferred:$
          ;; Record that the buffer is being parsed
          (ycmd--report-status 'parsing)

          ;; Make the request.
          (ycmd--request "/event_notification"
                         content
