     (if (/= starting (point))
         (rust-rewind-irrelevant))))
 
+(defun rust-first-indent-after-brace ()
+  (save-excursion
+    (forward-char)
+    (if (looking-at "[[:blank:]]*\\(?://.*\\)?$")
+        ;; We don't want to indent out to the open bracket if the
+        ;; open bracket ends the line
+        (* rust-indent-offset (rust-paren-level))
+      (when (looking-at "[[:space:]]") (forward-to-word 1))
+      (current-column))))
+
 (defun rust-mode-indent-line ()
   (interactive)
   (let ((indent

                           (back-to-indentation)
                           (if (looking-at "#")
                               (* rust-indent-offset level)
                             (* rust-indent-offset (+ 1 level)))))))))))

              ;; Otherwise we're in a column-zero definition
              (t 0))))))

               (let ((pt (point)))
                 (rust-rewind-irrelevant)
                 (backward-up-list)
                 (if (looking-at "[[({]")
                     (rust-first-indent-after-brace)
                   (progn
                     (goto-char pt)
                     (back-to-indentation)
                     (if (looking-at "\\<else\\>")
