Commit graph

135 commits

Author SHA1 Message Date
Glenn Morris
d136f18462 Doc fixes
* doc/misc/autotype.texi (Skeleton Language):
* doc/misc/message.texi (Header Commands):
* lisp/allout-widgets.el (allout-widgets-tally)
(allout-decorate-item-guides):
* lisp/menu-bar.el (menu-bar-positive-p):
* lisp/minibuffer.el (completion-pcm-complete-word-inserts-delimiters):
* lisp/cedet/ede.el (ede-project-directories, ede-check-project-directory):
* lisp/cedet/semantic/ia-sb.el (semantic-ia-sb-show-doc):
* lisp/cedet/semantic/tag.el (semantic-tag-in-buffer-p):
* lisp/cedet/semantic/bovine/c.el (semantic-tag-abstract-p):
* lisp/gnus/gnus-registry.el (gnus-registry-install-p): Doc fix.
* lisp/progmodes/gdb-mi.el (gdbmi-same-start, gdbmi-is-number):
* lisp/progmodes/js.el (js--inside-param-list-p)
(js--inside-dojo-class-list-p, js--forward-destructuring-spec):
* lisp/progmodes/prolog.el (region-exists-p):
* lisp/progmodes/verilog-mode.el (verilog-scan-cache-ok-p):
* lisp/textmodes/reftex-parse.el (reftex-using-biblatex-p):
* lisp/url/url-parse.el (url-generic-parse-url):
* src/floatfns.c (Fisnan):
* src/profiler.c (Fprofiler_cpu_running_p):
Doc fixes (replace `iff').

Fixes: debbugs:17309
2014-05-01 19:55:25 -04:00
Glenn Morris
34dc21db6e Replace "Maintainer: FSF" with the emacs-devel mailing address 2014-02-09 17:34:22 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Leo Liu
0518b057fe * subr.el (process-live-p): Return nil for non-process.
* progmodes/sh-script.el (sh-shell-process):
* progmodes/octave.el (inferior-octave-process-live-p):
* progmodes/gdb-mi.el (gdb-delchar-or-quit)
(gdb-inferior-io-sentinel):
* emacs-lock.el (emacs-lock-live-process-p): All uses changed.

Fixes: debbugs:16023
2013-12-02 15:13:01 +08:00
Stefan Monnier
9bc67baa5a * lisp/progmodes/gdb-mi.el: Avoid backtracking in regexp matcher.
(gdb--string-regexp): New constant.
(gdb-tooltip-print, gdb-var-evaluate-expression-handler)
(gdbmi-bnf-stream-record, gdb-jsonify-buffer): Use it.
(gdb-source-file-regexp, gdb-prompt-name-regexp): Use it and change
submatch 1.
(gdb-get-source-file-list, gdb-get-prompt, gdb-get-source-file):
Adjust use accordingly.
(gdb-breakpoints-list-handler-custom): Pre-build the y/n string.
2013-11-17 18:01:23 -05:00
Glenn Morris
35ffc6ba91 * lisp/progmodes/gdb-mi.el (gud-cont, gud-step): Declare. 2013-09-12 23:56:35 -07:00
Dmitry Antipov
290d5b5890 Do not call to `selected-window' where it is assumed by default.
Affected functions are `window-minibuffer-p', `window-dedicated-p',
`window-hscroll', `window-width', `window-height', `window-buffer',
`window-frame', `window-start', `window-point', `next-window'
and `window-display-table'.
* abbrev.el (abbrev--default-expand):
* bs.el (bs--show-with-configuration):
* buff-menu.el (Buffer-menu-mouse-select):
* calc/calc.el (calc):
* calendar/calendar.el (calendar-generate-window):
* calendar/diary-lib.el (diary-simple-display, diary-show-all-entries)
(diary-make-entry):
* comint.el (send-invisible, comint-dynamic-complete-filename)
(comint-dynamic-simple-complete, comint-dynamic-list-completions):
* completion.el (complete):
* dabbrev.el (dabbrev-expand, dabbrev--make-friend-buffer-list):
* disp-table.el (describe-current-display-table):
* doc-view.el (doc-view-insert-image):
* ebuff-menu.el (Electric-buffer-menu-mouse-select):
* ehelp.el (with-electric-help):
* emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
* emacs-lisp/edebug.el (edebug-two-window-p, edebug-pop-to-buffer):
* emacs-lisp/helper.el (Helper-help-scroller):
* emulation/cua-base.el (cua--post-command-handler-1):
* eshell/esh-mode.el (eshell-output-filter):
* ffap.el (ffap-gnus-wrapper):
* help-macro.el (make-help-screen):
* hilit-chg.el (highlight-compare-buffers):
* hippie-exp.el (hippie-expand, try-expand-dabbrev-visible):
* hl-line.el (global-hl-line-highlight):
* icomplete.el (icomplete-simple-completing-p):
* isearch.el (isearch-done):
* jit-lock.el (jit-lock-stealth-fontify):
* mail/rmailsum.el (rmail-summary-scroll-msg-up):
* lisp/mouse-drag.el (mouse-drag-should-do-col-scrolling):
* mpc.el (mpc-tagbrowser, mpc):
* net/rcirc.el (rcirc-any-buffer):
* play/gomoku.el (gomoku-max-width, gomoku-max-height):
* play/landmark.el (landmark-max-width, landmark-max-height):
* play/zone.el (zone):
* progmodes/compile.el (compilation-goto-locus):
* progmodes/ebrowse.el (ebrowse-view/find-file-and-search-pattern):
* progmodes/etags.el (find-tag-other-window):
* progmodes/fortran.el (fortran-column-ruler):
* progmodes/gdb-mi.el (gdb-mouse-toggle-breakpoint-fringe):
* progmodes/verilog-mode.el (verilog-point-text):
* reposition.el (reposition-window):
* rot13.el (toggle-rot13-mode):
* server.el (server-switch-buffer):
* shell.el (shell-dynamic-complete-command)
(shell-dynamic-complete-environment-variable):
* simple.el (insert-buffer, set-selective-display)
(delete-completion-window):
* speedbar.el (speedbar-timer-fn, speedbar-center-buffer-smartly)
(speedbar-recenter):
* startup.el (fancy-splash-head):
* textmodes/ispell.el (ispell-command-loop):
* textmodes/makeinfo.el (makeinfo-compilation-sentinel-region):
* tutorial.el (help-with-tutorial):
* vc/add-log.el (add-change-log-entry):
* vc/compare-w.el (compare-windows):
* vc/ediff-help.el (ediff-indent-help-message):
* vc/ediff-util.el (ediff-setup-control-buffer, ediff-position-region):
* vc/ediff-wind.el (ediff-skip-unsuitable-frames)
(ediff-setup-control-frame):
* vc/emerge.el (emerge-position-region):
* vc/pcvs-util.el (cvs-bury-buffer):
* window.el (walk-windows, mouse-autoselect-window-select):
* winner.el (winner-set-conf, winner-undo): Related users changed.
2013-08-05 18:26:57 +04:00
Glenn Morris
c4074c9f63 Tweak some message calls in gdb-mi.el
* lisp/progmodes/gdb-mi.el (gdb-delete-handler, gdb-stopped):
Let `message' do the formatting.
(def-gdb-preempt-display-buffer): Add explicit format.
2013-07-20 12:25:05 -07:00
Glenn Morris
f0398ec17f Merge from emacs-24; up to 2012-12-31T11:35:13Z!rudalics@gmx.at 2013-07-20 12:20:33 -07:00
Richard Copley
188c1ae603 * gdb-mi.el (gdb-done-or-error): Guard against "%" in gdb output (tiny change)
Fixes: debbugs:14127
2013-07-18 12:56:08 -04:00
Sergio Durigan Junior
a7d8babb09 Fix bug #14847 with continued GDB command lines in gdb-mi.el.
lisp/progmodes/gdb-mi.el (gdb-strip-string-backslash): New function.
 (gdb-send): Handle continued commands.
2013-07-12 21:17:17 +03:00
Glenn Morris
3d94f3ad81 * lisp/progmodes/gdb-mi.el (gdb-mapcar*): Remove, replace with cl-mapcar. 2013-06-21 20:35:51 -04:00
Glenn Morris
8accd027c4 * lisp/progmodes/gdb-mi.el (gdb-wait-for-pending): Fix typo. 2013-05-30 19:33:08 -04:00
Jean-Philippe Gravel
2e78e6a794 * progmodes/gdb-mi.el (gdb-running, gdb-starting): Remove
signals for which replies are never received.
2013-05-14 14:34:13 -04:00
Jean-Philippe Gravel
53267ccaa5 * progmodes/gdb-mi.el: Fix non-responsive gud commands (bug#13845)
(gdb-handler-alist, gdb-handler-number): Remove variables.
(gdb-handler-list): New variable.
(gdb-add-handler, gdb-delete-handler, gdb-get-handler-function)
(gdb-pending-handler-p, gdb-handle-reply)
(gdb-remove-all-pending-triggers): New functions.
(gdb-discard-unordered-replies): New defcustom.
(gdb-handler): New defstruct.
(gdb-wait-for-pending): Fix invalid backquote.  Use gdb-handler-list.
instead of gdb-pending-triggers.  Update docstring.
(gdb-init-1): Remove dead variables.  Initialize gdb-handler-list.
(gdb-speedbar-update, gdb-speedbar-timer-fn, gdb-var-update)
(gdb-var-update-handler, def-gdb-auto-update-trigger)
(def-gdb-auto-update-handler, gdb-get-changed-registers)
(gdb-changed-registers-handler, gdb-get-main-selected-frame)
(gdb-frame-handler): Pending triggers are now automatically managed.
(def-gdb-trigger-and-handler, def-gdb-auto-update-handler):
Remove argument.
(gdb-input): Automatically handles pending triggers.  Update docstring.
(gdb-resync): Replace gdb-pending-triggers by gdb-handler-list.
(gdb-thread-exited, gdb-thread-selected, gdb-register-names-handler):
Update comments.
(gdb-done-or-error): Now use gdb-handle-reply.
2013-05-14 14:13:31 -04:00
Jean-Philippe Gravel
d04ce803e5 * progmodes/gdb-mi.el (gdb-input): Include token numbers in
gdb-debug-log.
2013-05-12 09:38:42 -04:00
Stefan Monnier
bcd7a0a4c5 Use add/remove-function to manipulate process-filters.
* lisp/emacs-lisp/nadvice.el (advice--where-alist): Add :override.
(remove-function): Autoload.

* lisp/comint.el (comint-redirect-original-filter-function): Remove.
(comint-redirect-cleanup, comint-redirect-send-command-to-process):
* lisp/vc/vc-cvs.el (vc-cvs-annotate-process-filter,vc-cvs-annotate-command):
* lisp/progmodes/octave-inf.el (inferior-octave-send-list-and-digest):
* lisp/progmodes/prolog.el (prolog-consult-compile):
* lisp/progmodes/gdb-mi.el (gdb, gdb--check-interpreter):
Use add/remove-function instead.
* lisp/progmodes/gud.el (gud-tooltip-original-filter): Remove.
(gud-tooltip-process-output, gud-tooltip-tips):
Use add/remove-function instead.
* lisp/progmodes/xscheme.el (xscheme-previous-process-state): Remove.
(scheme-interaction-mode, exit-scheme-interaction-mode):
Use add/remove-function instead.

* lisp/vc/vc-dispatcher.el: Use lexical-binding.
(vc--process-sentinel): Rename from vc-process-sentinel.
Change last arg to be the code to run.  Don't use vc-previous-sentinel
and vc-sentinel-commands any more.
(vc-exec-after): Allow code to be a function.  Use add/remove-function.
(compilation-error-regexp-alist, view-old-buffer-read-only): Declare.
2013-04-20 12:24:04 -04:00
Jean-Philippe Gravel
7ce5be5461 * lisp/progmodes/gdb-mi.el (gdbmi-bnf-incomplete-record-result):
Fix adjustment of offset when receiving incomplete responses from GDB.

Fixes: debbugs:14129
2013-04-16 20:35:22 -04:00
Jean-Philippe Gravel
6ff2c8f1fe * lisp/progmodes/gdb-mi.el: Speed up initialization. Use lexical-binding.
Fix up docstring according to conventions.
(gdbmi-debug-mode): New var.
(gdbmi-start-with, gdbmi-same-start, gdbmi-is-number, gdbmi-bnf-init)
(gdbmi-bnf-output, gdbmi-bnf-skip-unrecognized, gdbmi-bnf-gdb-prompt)
(gdbmi-bnf-result-record, gdbmi-bnf-out-of-band-record)
(gdbmi-bnf-async-record, gdbmi-bnf-stream-record)
(gdbmi-bnf-console-stream-output, gdbmi-bnf-target-stream-output)
(gdbmi-bnf-log-stream-output, gdbmi-bnf-result-and-async-record-impl)
(gdbmi-bnf-incomplete-record-result): New functions.
(gdb-car<): Remove function.
(gdbmi-record-list): Remove variable.
(gdbmi-bnf-state, gdbmi-bnf-offset): New vars.
(gdbmi-bnf-result-state-configs): New const.
(gud-gdbmi-marker-filter): Rewrite.
(gdb-ignored-notification, gdb-thread-created, gdb-thread-exited)
(gdb-thread-selected, gdb-running, gdb-starting, gdb-stopped):
Add `token' argument.
(gdb-done, gdb-error): New functions.
(gdb-done-or-error): Add `is-complete' argument.  Change arg order.

Fixes: debbugs:10580
2013-03-11 13:13:39 -04:00
Aaron S. Hawley
9fc9a531a5 Disambiguate function and variable references in docstrings.
* lisp/comint.el (comint-history-isearch-message): Fix ambiguous doc
 string cross-reference(s).

* lisp/ffap.el (ffap-string-at-point-region, ffap-next)
(ffap-string-at-point, ffap-string-around)
(ffap-copy-string-as-kill, ffap-highlight-overlay)
(ffap-literally): Fix ambiguous doc string cross-reference(s).

* lisp/font-lock.el (font-lock-keywords-alist)
(font-lock-removed-keywords-alist): Fix ambiguous doc string
        cross-reference(s).

* lisp/help-mode.el (help-xref-symbol-regexp): Add "call" as a hint for
a cross-reference to a function.

* lisp/info.el (Info-find-emacs-command-nodes): Fix ambiguous doc
 string cross-reference(s).

* lisp/isearch.el (isearch-message-function, isearch-fail-pos): Fix
 ambiguous doc string cross-reference(s).

* lisp/misearch.el (multi-isearch-next-buffer-function): Fix ambiguous
 doc string cross-reference(s).

* lisp/newcomment.el (comment-box): Fix ambiguous doc string
 cross-reference(s).

* lisp/printing.el (pr-txt-printer-alist, pr-ps-printer-alist)
(pr-setting-database): Fix ambiguous doc string
 cross-reference(s).

* lisp/ps-print.el (ps-even-or-odd-pages, ps-spool-buffer-with-faces)
(ps-n-up-filling-database): Fix ambiguous doc string
 cross-reference(s).

* lisp/server.el (server-buffer, server-log): Fix ambiguous doc string
 cross-reference(s).

* lisp/simple.el (newline, delete-backward-char, delete-forward-char)
(minibuffer-history-isearch-message, kill-line, track-eol)
(temporary-goal-column): Fix ambiguous doc string
 cross-reference(s).

* lisp/whitespace.el (whitespace-point)
(whitespace-font-lock-refontify, whitespace-bob-marker)
(whitespace-eob-marker): Fix ambiguous doc string
 cross-reference(s).

* lisp/calc/calc.el (calc-highlight-selections-with-faces)
 (calc-dispatch): Fix ambiguous doc string cross-reference(s).

* lisp/emacs-lisp/edebug.el (edebug-read, edebug-eval-defun): Fix
 ambiguous doc string cross-reference(s).

* lisp/gnus/gnus-start.el (gnus-check-new-newsgroups): Fix ambiguous doc string
 cross-reference(s).

* lisp/gnus/gnus-sum.el (gnus-summary-newsgroup-prefix): Fix ambiguous doc string
 cross-reference(s).

* lisp/international/mule.el (add-to-coding-system-list): Fix ambiguous
 doc string cross-reference(s).

* lisp/progmodes/cc-fonts.el (c-font-lock-keywords-3)
(c++-font-lock-keywords-3, objc-font-lock-keywords-3)
(java-font-lock-keywords-3, idl-font-lock-keywords-3)
(pike-font-lock-keywords-3): Fix ambiguous doc string
 cross-reference(s).

* lisp/progmodes/compile.el (compile): Fix ambiguous doc string
 cross-reference(s).

* lisp/progmodes/etags.el (tags-table-files)
(tags-table-files-function, tags-included-tables-function): Fix
 ambiguous doc string cross-reference(s).

* lisp/progmodes/gdb-mi.el (gdb, gdb-setup-windows)
(gdb-restore-windows): Fix ambiguous doc string
 cross-reference(s).

* lisp/textmodes/flyspell.el (flyspell-mark-duplications-flag)
(flyspell-default-deplacement-commands): Fix ambiguous doc string
 cross-reference(s).

* lisp/textmodes/ispell.el (ispell-accept-output): Fix ambiguous doc
 string cross-reference(s).

* lisp/textmodes/sgml-mode.el (html-tag-help): Fix ambiguous doc string
 cross-reference(s).

* lisp/vc/compare-w.el (compare-ignore-whitespace)
(compare-ignore-case, compare-windows-dehighlight): Fix ambiguous
 doc string cross-reference(s).

* lisp/vc/diff.el (diff): Fix ambiguous doc string cross-reference(s).

* src/insdel.c (Fcombine_after_change_execute, syms_of_insdel): Fix
 ambiguous doc string cross-reference(s).

* src/keyboard.c (Fcommand_execute, syms_of_keyboard): Fix ambiguous
 doc string cross-reference(s).

* src/window.c (Fwindow_point, syms_of_window): Fix ambiguous doc
 string cross-reference(s).

Fixes: debbugs:12686
2013-01-11 18:08:55 -05:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Chong Yidong
8c27235ead Fix how gdb-mi calls display-buffer to avoid switching frames.
* lisp/progmodes/gdb-mi.el (gdb-display-buffer-other-frame-action):
Convert to defcustom.
(gdb-get-source-file): Don't bind pop-up-windows.

* lisp/progmodes/gud.el (gud-display-line): Don't specially re-use
other frames for the gdb-mi case.

Fixes: debbugs:12648
2012-10-19 03:46:18 +08:00
Chong Yidong
d97af5a07f Clean up gdb-mi's usage of display-buffer.
* progmodes/gdb-mi.el (gdb-display-buffer-other-frame-action): New
variable, replacing gdb-frame-parameters.
(gdb-frame-io-buffer, gdb-frame-breakpoints-buffer)
(gdb-frame-threads-buffer, gdb-frame-memory-buffer)
(gdb-frame-disassembly-buffer, gdb-frame-stack-buffer)
(gdb-frame-locals-buffer, gdb-frame-registers-buffer): Use it.
(def-gdb-frame-for-buffer): Macro deleted.  It is easier to define
the functions directly with gdb-display-buffer-other-frame-action.
(gdb-display-breakpoints-buffer, gdb-display-threads-buffer)
(gdb-display-memory-buffer, gdb-display-disassembly-buffer)
(gdb-display-stack-buffer, gdb-display-locals-buffer)
(gdb-display-registers-buffer): Define directly.
(def-gdb-display-buffer): Macro deleted.
(gdb-display-buffer): Remove second and third args, callers don't
use them.  Defer to the default display-buffer behavior, apart
from making windows dedicated.
(gdb-setup-windows): Don't call display-buffer unnecessarily.

* window.el (display-buffer-pop-up-frame): Handle a
pop-up-frame-parameters alist entry.
(display-buffer): Document it.

* progmodes/gud.el (gud-display-line): Just use display-buffer.
2012-08-26 17:16:48 +08:00
Eli Zaretskii
ba025fbd44 Fix and improve GUD Tooltip mode.
lisp/tooltip.el (tooltip-identifier-from-point): Don't treat tokens
 inside comments and strings as identifiers.
 lisp/progmodes/gud.el (gud-tooltip-print-command): Quote the
 expression to evaluate.  This allows to evaluate expressions with
 embedded whitespace.
 (gud-tooltip-tips): Add a blank before the newline in the
 message-box text, for the benefit of message-box emulation on
 MS-Windows.
 lisp/progmodes/gdb-mi.el (gdb-tooltip-print): Don't ignore error
 messages from GDB, pop them up in a tooltip to give feedback to
 user.
 (gdb-tooltip-print-1): Quote the expression to evaluate.  This
 allows to evaluate expressions with embedded whitespace.
 (gdb-inferior-io--init-proc): Don't send "-inferior-tty" command
 if the TTY name is nil or empty (which happens when communicating
 with the inferior via pipes, e.g. on MS-Windows).
 (gdb-internals): If GDB sends a "&\n" empty debugging message,
 don't send that to the GUD buffer.

 doc/emacs/building.texi (Debugger Operation): Correct and improve
 documentation of the GUD Tooltip mode.
2012-08-14 21:48:39 +03:00
Chong Yidong
8c74a125c8 Merge from emacs-24 branch; up to 2012-05-01T18:47:23Z!rgm@gnu.org 2012-07-28 23:12:12 +08:00
Chong Yidong
a55739d3d0 Fix bogus code in gdb-place-breakpoints.
* progmodes/gdb-mi.el (gdb-place-breakpoints): Fix the call to
gdb-get-location.
2012-07-28 23:09:36 +08:00
Stefan Monnier
a464a6c73a More CL cleanups and reduction of use of cl.el.
* woman.el, winner.el, vc/vc-rcs.el, vc/vc-hooks.el, vc/vc-hg.el:
* vc/vc-git.el, vc/vc-dir.el, vc/vc-bzr.el, vc/vc-annotate.el:
* textmodes/tex-mode.el, textmodes/sgml-mode.el, tar-mode.el:
* strokes.el, ses.el, server.el, progmodes/js.el, progmodes/gdb-mi.el:
* progmodes/flymake.el, progmodes/ebrowse.el, progmodes/compile.el:
* play/tetris.el, play/snake.el, play/pong.el, play/landmark.el:
* play/hanoi.el, play/decipher.el, play/5x5.el, nxml/nxml-mode.el:
* net/secrets.el, net/quickurl.el, midnight.el, mail/footnote.el:
* image-dired.el, ibuffer.el, ibuf-macs.el, ibuf-ext.el, hexl.el:
* eshell/eshell.el, eshell/esh-io.el, eshell/esh-ext.el:
* eshell/esh-cmd.el, eshell/em-ls.el, eshell/em-hist.el:
* eshell/em-cmpl.el, eshell/em-banner.el:
* url/url.el, url/url-queue.el, url/url-parse.el, url/url-http.el:
* url/url-future.el, url/url-dav.el, url/url-cookie.el:
* calendar/parse-time.el, test/eshell.el: Use cl-lib.
* wid-browse.el, wdired.el, vc/vc.el, vc/vc-mtn.el, vc/vc-cvs.el:
* vc/vc-arch.el, tree-widget.el, textmodes/texinfo.el:
* textmodes/refill.el, textmodes/css-mode.el, term/tvi970.el:
* term/ns-win.el, term.el, shell.el, ps-samp.el:
* progmodes/perl-mode.el, progmodes/pascal.el, progmodes/gud.el:
* progmodes/glasses.el, progmodes/etags.el, progmodes/cwarn.el:
* play/gamegrid.el, play/bubbles.el, novice.el, notifications.el:
* net/zeroconf.el, net/xesam.el, net/snmp-mode.el, net/mairix.el:
* net/ldap.el, net/eudc.el, net/browse-url.el, man.el:
* mail/mailheader.el, mail/feedmail.el:
* url/url-util.el, url/url-privacy.el, url/url-nfs.el, url/url-misc.el:
* url/url-methods.el, url/url-gw.el, url/url-file.el, url/url-expand.el:
Dont use CL.
* ibuf-ext.el (ibuffer-mark-old-buffers): Use float-time.
* eshell/esh-opt.el (eshell-eval-using-options): Quote code with
`lambda' rather than with `quote'.
(eshell-do-opt): Adjust accordingly.
(eshell-process-option): Simplify.
* eshell/esh-var.el:
* eshell/em-script.el: Require `esh-opt' for eshell-eval-using-options.
* emacs-pcase.el (pcase--dontcare-upats, pcase--let*)
(pcase--expand, pcase--u1): Rename pcase's internal `dontcare' pattern
to `pcase--dontcare'.
* emacs-cl.el (labels): Mark obsolete.
(cl--letf, letf): Move to cl-lib.
(cl--letf*, letf*): Remove.
* emacs-cl-lib.el (cl-nth-value): Use defalias.
* emacs-cl-macs.el (cl-dolist, cl-dotimes): Add indent rule.
(cl-progv): Rewrite.
(cl--letf, cl-letf): Move from cl.el.
(cl-letf*): New macro.
* emacs-cl-extra.el (cl--progv-before, cl--progv-after): Remove.
2012-07-11 19:13:41 -04:00
Stefan Monnier
e7e85dc0a0 * lisp/progmodes/gdb-mi.el: Minor style changes.
(gdb-enable-debug, gdb-speedbar-auto-raise, gdb-many-windows):
Turn into minor modes.
(gdb--if-arrow): Rename from gdb-if-arrow, make it hygienic.
(gdb-mouse-until, gdb-mouse-jump): Adjust uses accordingly.
(gdb-shell): Remove unneeded let-binding.
(gdb-get-many-fields): Eliminate O(n²) behavior.
2012-05-25 10:47:57 -04:00
Chong Yidong
a8e7d6d783 Merge changes from emacs-24 branch 2012-04-27 11:10:38 +08:00
Eli Zaretskii
afc6df8786 Force interactive-mode in GDB on MS-Windows.
lisp/progmodes/gdb-mi.el (gdb-init-1): Condition Windows-specific
 settings on 'system-type', not on 'window-system'.  On MS-Windows,
 set interactive-mode on in GDB.
2012-04-25 11:07:57 +03:00
Eli Zaretskii
9ee9f4709c Fix bug #11279 with sending command blocks to GDB.
lisp/progmodes/gdb-mi.el (gdb-control-level): New variable.
 (gdb): Make it buffer-local and init to zero.
 (gdb-control-commands-regexp): New variable.
 (gdb-send): Don't wrap in "-interpreter-exec console" if
 gdb-control-level is positive.  Increment gdb-control-level
 whenever the command matches gdb-control-commands-regexp, and
 decrement it each time the command is "end".  (Bug#11279)
2012-04-20 13:09:40 +03:00
Chong Yidong
c07a4c0b59 Merge from emacs-24 branch 2012-04-20 16:48:50 +08:00
Chong Yidong
8912063b46 Fix last change.
* lisp/progmodes/gdb-mi.el (gdb-inferior-io-sentinel): Don't do
anything if gdb process is killed.
2012-04-20 15:13:25 +08:00
Chong Yidong
f30d612a7a Fixes for pty handling in gdb-mi.el and process.c.
* lisp/progmodes/gdb-mi.el (gdb): Revert 2012-04-19 change.
(gdb-inferior-io--init-proc): New function.
(gdb-init-1): Use it.
(gdb-inferior-io-sentinel): New sentinel for the gdb-inferior pty,
responsible for allocating a new pty and hooking it to gdb when
the old pty gets an EIO due to process exit.
(gdb-delchar-or-quit): New command.  Bind it in gdb-mi buffers.
(gdb-tooltip-print): Don't use obsolete tooltip-use-echo-area.
(gdb-inferior-io--maybe-delete-pty): Move into gdb-reset.

* src/process.c (wait_reading_process_output): If EIO occurs on a pty,
set the status to "failed" and ensure that sentinel is run.

* doc/lispref/processes.texi (Asynchronous Processes): Mention nil
argument to start-process.
2012-04-20 14:39:29 +08:00
Chong Yidong
b668fa6eb0 Delete the gdb-inferior pty when the gdb process exits.
* lisp/progmodes/gdb-mi.el (gdb-inferior-io--maybe-delete-pty): New
function to call delete-process on the gdb-inferior buffer's pty.
(gdb-reset): Use it, instead of relying on kill-buffer to kill the
pty process.
(gdb-update): New arg to suppress talking to the gdb process.
(gdb-done-or-error): Use it.
(gdb-stopped-functions): Rename from gdb-stopped-hooks.
(gdb): Call gdb-inferior-io--maybe-delete-pty as a workaround for
sentinel not being called.

* lisp/comint.el (make-comint-in-buffer, comint-exec): Doc fix.

Fixes: debbugs:11273
2012-04-19 16:09:30 +08:00
Sam Steingold
a77b0ac992 * lisp/progmodes/gud.el (gud-key-prefix): Use :type 'key-sequence
instead of 'string to accommodate values like [f11].
Always use `vconcat' instead of `concat' on it, like in `gud-def'.
* lisp/progmodes/gdb-mi.el: Likewise.
2012-04-18 16:26:57 -04:00
Kaushik Srenevasan
4a07df36a5 GDB change for dynamically generated code (tiny change)
Ref: http://lists.gnu.org/archive/html/emacs-devel/2012-01/msg00753.html

* lisp/progmodes/gdb-mi.el (gdb-invalidate-disassembly):
For dynamically generated code, follow $PC.
(gdb-disassembly-handler-custom): Handle no function name case.

Fixes: debbugs:10597
2012-03-13 00:07:10 -07:00
Kaushik Srenevasan
133b8e1120 Small gdb-breakpoints fix (tiny change)
Ref: http://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00753.html

* lisp/progmodes/gdb-mi.el (gdb-breakpoints-list-handler-custom):
Handle breakpoints with no "type".
2012-03-06 00:37:38 -08:00
Jim Blandy
4fd9655790 Fix handling of commands containing double quotes in gdb-mi
* lisp/progmodes/gdb-mi.el (gdb-mi-quote): New function.
(gdb-send): Apply it to the operand of the '-interpreter-exec
console' command, so that we can pass arguments with (say) quotes
in them.  Store exact string sent in gdb-debug-log (Bug#10765).
2012-02-26 17:38:45 +08:00
Andreas Schwab
1ff980ae49 * progmodes/gud.el (gud-pv): Use pv instead of pv1.
* progmodes/gdb-mi.el (gud-pp): Use pp instead of pp1.
2012-02-05 09:06:37 +01:00
Glenn Morris
9e7056a545 Fix previous change. 2012-01-31 18:47:33 -05:00
Glenn Morris
d0045ba061 Comment trivia. 2012-01-31 18:43:05 -05:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Chong Yidong
51281b3202 Fix GDB mode line for gdb-create-source-file-list nil.
* lisp/progmodes/gdb-mi.el (gdb-get-source-file-list)
(gdb-get-source-file): Move mode line update to gdb-get-source-file.

Fixes: debbugs:10087
2011-12-28 13:23:47 +08:00
Chong Yidong
2170cb536d Fix GDB/MI inline completion.
* progmodes/gdb-mi.el (gdb-input): Accept command and handler
function as separate arguments.
(gdb-init-1, gdb-non-stop-handler, gdb-check-target-async)
(gdb-tooltip-print-1, gud-watch, gdb-speedbar-update)
(gdb-var-list-children, gdb-var-set-format, gdb-var-delete-1)
(gdb-var-delete-children, gdb-edit-value, gdb-var-update)
(gdb-stopped, def-gdb-auto-update-trigger)
(gdb-place-breakpoints, gdb-select-thread, gdb-select-frame)
(gdb-get-changed-registers, gdb-get-main-selected-frame): Callers
changed.
(gud-gdbmi-completions): New function.
(gdb): Use it for generating the completion table.

* progmodes/gud.el (gud-gdb-fetch-lines-filter): Just use
gud-gdb-marker-filter without taking it as an argument.
(gud-gdb-run-command-fetch-lines): Caller changed.
(gud-gdb-completion-function): New variable.
(gud-gdb-completion-at-point): Use it.
(gud-gdb-completions-1): Split from gud-gdb-completions.
2011-12-25 18:46:49 +08:00
Paul Eggert
bbd240ceee Spelling fixes. 2011-12-14 23:24:10 -08:00
Chong Yidong
ee95746181 * progmodes/gdb-mi.el (gdb): Set comint-prompt-regexp
which is required for completion via gud-gdb-fetch-lines-filter.

Fixes: debbugs:10274
2011-12-11 21:17:07 +08:00
Ken Brown
087ef505f2 Fix gdb-mi.el bug#9853, bug#9858, and bug#9878.
* lisp/progmodes/gdb-mi.el (gdb-version): Remove defvar.
(gdb-supports-non-stop): New defvar, replacing `gdb-version'.
(gdb-gud-context-command, gdb-non-stop-handler)
(gdb-current-context-command, gdb-stopped): Use it.
(gdb-init-1): Enable pretty printing here.
(gdb-non-stop-handler): Don't enable pretty-printing here.  Check
to see if the target supports non-stop mode; if not, turn off
non-stop mode.  Use the following.
(gdb-check-target-async): New defun.
(gud-watch, gdb-stopped): Fix whitespace.
(gdb-get-source-file): Don't try to display the source file if
`gdb-main-file' is nil.
2011-11-29 22:18:33 -05:00
Nick Roberts
c3f1c606c9 progmodes/gdb-mi.el (gdb-init-1): Condition execution of gdb-get-source-file-list on gdb-create-source-file-list. 2011-11-27 21:33:25 +13:00
Juanma Barranquero
fe7a3057a3 Fix typos. 2011-11-20 20:35:27 +01:00