   ;; Comments
   (set (make-local-variable 'comment-start) "// ")
   (set (make-local-variable 'comment-end)   "")
+  (set (make-local-variable 'comment-use-syntax) nil)
+  (set (make-local-variable 'comment-start-skip) "\\([ \t]*\\)// ")
 
   ;; Go style
   (setq indent-tabs-mode t)

    (modify-syntax-entry ?\' "." st)
    (modify-syntax-entry ?`  "." st)
    (modify-syntax-entry ?\\ "." st)

    ;; Newline is a comment-ender.
    (modify-syntax-entry ?\n "> b" st)

    st)
  "Syntax table for Go mode.")

         (not (looking-at go-mode-non-terminating-keywords-regexp)))))))

(defun go-mode-whitespace-p (char)
  "Is char whitespace in the syntax table for go."
  (eq 32 (char-syntax char)))

(defun go-mode-backward-skip-comments ()
  "Skip backward over comments and whitespace."
