aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoakim Verona2013-08-13 04:45:50 +0200
committerJoakim Verona2013-08-13 04:45:50 +0200
commit71c3ecbadba97c8502afe8f5ab5b1b6edbf3f39a (patch)
tree79eb78545b68054115147e518f98c4b555ca2169
parenta24dabe5ac4e7d051b9c1d6fc3bc17154ea0d042 (diff)
parent5514cc4c84969122668c89a387b858157e0c2e74 (diff)
downloademacs-71c3ecbadba97c8502afe8f5ab5b1b6edbf3f39a.tar.gz
emacs-71c3ecbadba97c8502afe8f5ab5b1b6edbf3f39a.zip
merge from trunk
-rw-r--r--lisp/ChangeLog14
-rw-r--r--lisp/emacs-lisp/cl-macs.el2
-rw-r--r--lisp/emacs-lisp/gv.el6
-rw-r--r--lisp/emacs-lisp/timer.el33
4 files changed, 32 insertions, 23 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 290af08f765..0c0c3911cfd 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
12013-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * emacs-lisp/timer.el (timer--time-setter): New function.
4 (timer--time): Use it as gv-setter.
5
6 * emacs-lisp/gv.el (gv-define-simple-setter): Output warning when
7 setter is not a symbol.
8
12013-08-12 Grégoire Jadi <daimrod@gmail.com> 92013-08-12 Grégoire Jadi <daimrod@gmail.com>
2 10
3 * mail/sendmail.el (sendmail-send-it): Don't kill the error buffer 11 * mail/sendmail.el (sendmail-send-it): Don't kill the error buffer
@@ -20,8 +28,8 @@
20 28
212013-08-11 Lars Magne Ingebrigtsen <larsi@gnus.org> 292013-08-11 Lars Magne Ingebrigtsen <larsi@gnus.org>
22 30
23 * net/eww.el (eww-display-html): Ignore coding system errors. One 31 * net/eww.el (eww-display-html): Ignore coding system errors.
24 web site uses "utf-8lias" as the coding system. 32 One web site uses "utf-8lias" as the coding system.
25 33
262013-08-11 Juanma Barranquero <lekktu@gmail.com> 342013-08-11 Juanma Barranquero <lekktu@gmail.com>
27 35
@@ -222,7 +230,7 @@
222 (allout-up-current-level, allout-end-of-level, allout-reindent-body) 230 (allout-up-current-level, allout-end-of-level, allout-reindent-body)
223 (allout-yank-processing, allout-process-exposed) 231 (allout-yank-processing, allout-process-exposed)
224 (allout-latex-verb-quote, allout-latexify-one-item, outlineify-sticky) 232 (allout-latex-verb-quote, allout-latexify-one-item, outlineify-sticky)
225 (allout-latex-verbatim-quote-curr-line): Removed unused variables. 233 (allout-latex-verbatim-quote-curr-line): Remove unused variables.
226 * emacs-lisp/lisp-mode.el (lisp-eval-defun, last-sexp-toggle-display) 234 * emacs-lisp/lisp-mode.el (lisp-eval-defun, last-sexp-toggle-display)
227 (lisp-indent-defform): Mark ignored arguments. 235 (lisp-indent-defform): Mark ignored arguments.
228 (lisp-indent-line): Mark ignored arguments. Remove unused variables. 236 (lisp-indent-line): Mark ignored arguments. Remove unused variables.
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index c47c9b61030..d9d6658811f 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -616,7 +616,7 @@ The result of the body appears to the compiler as a quoted constant."
616 (declare (debug (form &optional sexp))) 616 (declare (debug (form &optional sexp)))
617 (if (cl--compiling-file) 617 (if (cl--compiling-file)
618 (let* ((temp (cl-gentemp "--cl-load-time--")) 618 (let* ((temp (cl-gentemp "--cl-load-time--"))
619 (set `(set ',temp ,form))) 619 (set `(setq ,temp ,form)))
620 (if (and (fboundp 'byte-compile-file-form-defmumble) 620 (if (and (fboundp 'byte-compile-file-form-defmumble)
621 (boundp 'this-kind) (boundp 'that-one)) 621 (boundp 'this-kind) (boundp 'that-one))
622 (fset 'byte-compile-file-form 622 (fset 'byte-compile-file-form
diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el
index cf090e5e758..279ae582a05 100644
--- a/lisp/emacs-lisp/gv.el
+++ b/lisp/emacs-lisp/gv.el
@@ -217,13 +217,15 @@ instead the assignment is turned into something equivalent to
217 temp) 217 temp)
218so as to preserve the semantics of `setf'." 218so as to preserve the semantics of `setf'."
219 (declare (debug (sexp (&or symbolp lambda-expr) &optional sexp))) 219 (declare (debug (sexp (&or symbolp lambda-expr) &optional sexp)))
220 (when (eq 'lambda (car-safe setter))
221 (message "Use `gv-define-setter' or name %s's setter function" name))
220 `(gv-define-setter ,name (val &rest args) 222 `(gv-define-setter ,name (val &rest args)
221 ,(if fix-return 223 ,(if fix-return
222 `(macroexp-let2 nil v val 224 `(macroexp-let2 nil v val
223 `(progn 225 `(progn
224 (,',setter ,@(append args (list v))) 226 (,',setter ,@args ,v)
225 ,v)) 227 ,v))
226 `(cons ',setter (append args (list val)))))) 228 ``(,',setter ,@args ,val))))
227 229
228;;; Typical operations on generalized variables. 230;;; Typical operations on generalized variables.
229 231
diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el
index 410e43b16e6..1ee3cec15a6 100644
--- a/lisp/emacs-lisp/timer.el
+++ b/lisp/emacs-lisp/timer.el
@@ -55,30 +55,29 @@
55(defsubst timer--check (timer) 55(defsubst timer--check (timer)
56 (or (timerp timer) (signal 'wrong-type-argument (list #'timerp timer)))) 56 (or (timerp timer) (signal 'wrong-type-argument (list #'timerp timer))))
57 57
58(defun timer--time-setter (timer time)
59 (timer--check timer)
60 (setf (timer--high-seconds timer) (pop time))
61 (let ((low time) (usecs 0) (psecs 0))
62 (when (consp time)
63 (setq low (pop time))
64 (when time
65 (setq usecs (pop time))
66 (when time
67 (setq psecs (car time)))))
68 (setf (timer--low-seconds timer) low)
69 (setf (timer--usecs timer) usecs)
70 (setf (timer--psecs timer) psecs)
71 time))
72
58;; Pseudo field `time'. 73;; Pseudo field `time'.
59(defun timer--time (timer) 74(defun timer--time (timer)
75 (declare (gv-setter timer--time-setter))
60 (list (timer--high-seconds timer) 76 (list (timer--high-seconds timer)
61 (timer--low-seconds timer) 77 (timer--low-seconds timer)
62 (timer--usecs timer) 78 (timer--usecs timer)
63 (timer--psecs timer))) 79 (timer--psecs timer)))
64 80
65(gv-define-setter timer--time (time timer)
66 (macroexp-let2 nil val time
67 `(progn
68 (timer--check ,timer)
69 (setf (timer--high-seconds ,timer) (pop ,val))
70 (let ((low ,val) (usecs 0) (psecs 0))
71 (when (consp ,val)
72 (setq low (pop ,val))
73 (when ,val
74 (setq usecs (pop ,val))
75 (when ,val
76 (setq psecs (car ,val)))))
77 (setf (timer--low-seconds ,timer) low)
78 (setf (timer--usecs ,timer) usecs)
79 (setf (timer--psecs ,timer) psecs))
80 ,val)))
81
82(defun timer-set-time (timer time &optional delta) 81(defun timer-set-time (timer time &optional delta)
83 "Set the trigger time of TIMER to TIME. 82 "Set the trigger time of TIMER to TIME.
84TIME must be in the internal format returned by, e.g., `current-time'. 83TIME must be in the internal format returned by, e.g., `current-time'.