                           ;; ..or if the previous line ends with any of these:
                           ;;     { ? : ( , ; [ }
                           ;; then we are at the beginning of an expression, so stay on the baseline...
-                          (looking-back "[(,:;?[{}]\\|[^|]|")
+                          (looking-back "[(,:;?[{}]\\|[^|]|" nil)
                           ;; or if the previous line is the end of an attribute, stay at the baseline...
                           (progn (rust-rewind-to-beginning-of-current-level-expr) (looking-at "#")))))
                       baseline

          ;;
          ((skip-dot-identifier
            (lambda ()
              (when (looking-back (concat "\\." rust-re-ident))
                (forward-thing 'symbol -1)
                (backward-char)
                (- (current-column) rust-indent-offset)))))
        (cond
         ;; foo.bar(...)
         ((looking-back ")")
          (backward-list 1)
          (funcall skip-dot-identifier))


  "If the most recently inserted character is a `>`, briefly moves point to matching `<` (if any)."
  (interactive)
  (when (and rust-blink-matching-angle-brackets
             (looking-back ">" nil))
    (let ((matching-angle-bracket-point (save-excursion
                                          (backward-char 1)
                                          (rust-find-matching-angle-bracket))))
