emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/debug.el


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/debug.el
Date: Mon, 07 Mar 2005 09:12:32 -0500

Index: emacs/lisp/emacs-lisp/debug.el
diff -c emacs/lisp/emacs-lisp/debug.el:1.72 emacs/lisp/emacs-lisp/debug.el:1.73
*** emacs/lisp/emacs-lisp/debug.el:1.72 Fri Mar  4 14:48:14 2005
--- emacs/lisp/emacs-lisp/debug.el      Mon Mar  7 14:12:26 2005
***************
*** 693,717 ****
          (fset function (cons 'lambda (cons (car contents) body)))))))
  
  (defun debug-on-entry-1 (function defn flag)
!   (if (subrp defn)
!       (error "%s is a built-in function" function)
!     (if (eq (car defn) 'macro)
!       (debug-on-entry-1 function (cdr defn) flag)
!       (or (eq (car defn) 'lambda)
!         (error "%s not user-defined Lisp function" function))
!       (let ((tail (cdr defn)))
!       ;; Skip the docstring.
!       (when (and (stringp (cadr tail)) (cddr tail))
!         (setq tail (cdr tail)))
!       ;; Skip the interactive form.
!       (when (eq 'interactive (car-safe (cadr tail)))
!         (setq tail (cdr tail)))
!       (unless (eq flag (equal (cadr tail) debug-entry-code))
!         ;; Add/remove debug statement as needed.
!         (if flag
!             (setcdr tail (cons debug-entry-code (cdr tail)))
!           (setcdr tail (cddr tail))))
!       defn))))
  
  (defun debugger-list-functions ()
    "Display a list of all the functions now set to debug on entry."
--- 693,716 ----
          (fset function (cons 'lambda (cons (car contents) body)))))))
  
  (defun debug-on-entry-1 (function defn flag)
!   (let ((tail defn))
!     (if (subrp tail)
!       (error "%s is a built-in function" function)
!       (if (eq (car tail) 'macro) (setq tail (cdr tail)))
!       (if (eq (car tail) 'lambda) (setq tail (cdr tail))
!       (error "%s not user-defined Lisp function" function))
!       ;; Skip the docstring.
!       (when (and (stringp (cadr tail)) (cddr tail))
!       (setq tail (cdr tail)))
!       ;; Skip the interactive form.
!       (when (eq 'interactive (car-safe (cadr tail)))
!       (setq tail (cdr tail)))
!       (unless (eq flag (equal (cadr tail) debug-entry-code))
!       ;; Add/remove debug statement as needed.
!       (if flag
!           (setcdr tail (cons debug-entry-code (cdr tail)))
!         (setcdr tail (cddr tail))))
!       defn)))
  
  (defun debugger-list-functions ()
    "Display a list of all the functions now set to debug on entry."




reply via email to

[Prev in Thread] Current Thread [Next in Thread]