                            (back-to-indentation)
                            (if (looking-at "#")
                                (* rust-indent-offset level)
-                             (* rust-indent-offset (+ 1 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)
                 (cond 
                  ((and
                      (looking-at "[[(]")
                      ; We don't want to indent out to the open bracket if the
                      ; open bracket ends the line
                      (save-excursion 
                        (forward-char)
                        (not (looking-at "[[:space:]]*\\(?://.*\\)?$"))))
                   (+ 1 (current-column)))
                  ;; Check for fields on the same line as the open curly brace:
                  ((looking-at "{[[:space:]]*[^\n]*,[[:space:]]*$")
                   (progn
                    (forward-char)
                    (when (looking-at "[[:space:]]") (forward-to-word 1))
                    (current-column)))
                  (t (progn
                     (goto-char pt)
                     (back-to-indentation)
                     (if (looking-at "\\<else\\>")

              ;; A closing brace is 1 level unindended
              ((looking-at "}") (* rust-indent-offset (- level 1)))

              ;; Doc comments in /** style with leading * indent to line up the *s
              ((and (nth 4 (syntax-ppss)) (looking-at "*"))
               (+ 1 (* rust-indent-offset level)))

