   "History of argument lists passed to rdebug.")
 
 (defconst gud-rdebug-marker-regexp
-  "^\\([^:\n]*\\):\\([0-9]*\\).*\n"
+  "^\\(\\(?:[a-zA-Z]:\\)?[^:\n]*\\):\\([0-9]*\\).*\n"
   "Regular expression used to find a file location given by rdebug.
 
 Program-location lines look like this:


;; -- General, for all secondary buffers.

;; Note, we re-populate the menus of the different minor and major
;; modes. The reason is that Emacs caches the key bindings, which
;; means that wrong ones are shown when buffers are changed.


(defun rdebug-populate-debugger-menu (map)
  "Populate the Rdebug 'Debugger' menu."
  (let ((menu (make-sparse-keymap))
        (common-map (make-sparse-keymap)))
    ;; Use a simple common map to find the best key sequence to display in menu.
    (rdebug-populate-common-keys common-map)

    (define-key map [menu-bar debugger] (cons "Debugger" menu))

    (define-key menu [break-delete]
      (rdebug-menu-item common-map "Delete breakpoint" 'gud-remove))

    (define-key menu [break]
      (rdebug-menu-item common-map "Set breakpoint" 'gud-break))

    (define-key menu [finish] (rdebug-menu-item common-map "Step out" 'gud-finish))
    (define-key menu [step]   (rdebug-menu-item common-map "Step into" 'gud-step))
    (define-key menu [next]   (rdebug-menu-item common-map "Step over" 'gud-next))
    (define-key menu [cont]   (rdebug-menu-item common-map "Continue" 'gud-cont))
    (define-key menu [start]
      (rdebug-menu-item common-map "Start the debugger" 'rdebug))

    (define-key menu [placeholder] nil)

