diff options
| author | Stefan Monnier | 2012-09-26 10:41:05 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2012-09-26 10:41:05 -0400 |
| commit | 07b1a5fbc37e91003f3c76886b9e0be78b7dbc6d (patch) | |
| tree | 662fc176a1d29c0dc319aa128e27abcabfcbefbc /lisp | |
| parent | 42019c2e0c40c467250e7d73bed446b2bb19f287 (diff) | |
| download | emacs-07b1a5fbc37e91003f3c76886b9e0be78b7dbc6d.tar.gz emacs-07b1a5fbc37e91003f3c76886b9e0be78b7dbc6d.zip | |
* lisp/emacs-lisp/testcover.el (testcover-after): Add gv-expander.
(testcover-reinstrument): Simplify with CSE.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 35 | ||||
| -rw-r--r-- | lisp/emacs-lisp/gv.el | 2 | ||||
| -rw-r--r-- | lisp/emacs-lisp/testcover.el | 24 |
3 files changed, 36 insertions, 25 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c69f8bc870b..4599855e28d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2012-09-26 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * emacs-lisp/testcover.el (testcover-after): Add gv-expander. | ||
| 4 | (testcover-reinstrument): Simplify with CSE. | ||
| 5 | |||
| 1 | 2012-09-26 Juanma Barranquero <lekktu@gmail.com> | 6 | 2012-09-26 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 7 | ||
| 3 | * window.el (temp-buffer-window-setup): Fix typo in docstring. | 8 | * window.el (temp-buffer-window-setup): Fix typo in docstring. |
| @@ -13,9 +18,9 @@ | |||
| 13 | newline. Reported by Andrew Jones. | 18 | newline. Reported by Andrew Jones. |
| 14 | (verilog-auto-inst) Support expanding $clog2 in AUTOINST. | 19 | (verilog-auto-inst) Support expanding $clog2 in AUTOINST. |
| 15 | Reported by Brad Dobbie. | 20 | Reported by Brad Dobbie. |
| 16 | (verilog-batch-delete-trailing-whitespace): Create | 21 | (verilog-batch-delete-trailing-whitespace): |
| 17 | verilog-batch-delete-trailing-whitespace. Reported by Brad | 22 | Create verilog-batch-delete-trailing-whitespace. |
| 18 | Dobbie. | 23 | Reported by Brad Dobbie. |
| 19 | (verilog-auto-inout-param): Support AUTOINOUTPARAM for copying | 24 | (verilog-auto-inout-param): Support AUTOINOUTPARAM for copying |
| 20 | parameters from another module. Reported by Dan Katz. | 25 | parameters from another module. Reported by Dan Katz. |
| 21 | (verilog-auto, verilog-auto-assign-modport) | 26 | (verilog-auto, verilog-auto-assign-modport) |
| @@ -105,12 +110,12 @@ | |||
| 105 | * ansi-color.el (ansi-color-unfontify-region): | 110 | * ansi-color.el (ansi-color-unfontify-region): |
| 106 | * international/latin1-disp.el (latin1-char-displayable-p): | 111 | * international/latin1-disp.el (latin1-char-displayable-p): |
| 107 | * progmodes/cwarn.el (turn-on-cwarn-mode): | 112 | * progmodes/cwarn.el (turn-on-cwarn-mode): |
| 108 | * progmodes/which-func.el (which-func-update-1): Use | 113 | * progmodes/which-func.el (which-func-update-1): |
| 109 | define-obsolete-function-alias. | 114 | Use define-obsolete-function-alias. |
| 110 | 115 | ||
| 111 | * net/newst-backend.el (newsticker-cache-filename): | 116 | * net/newst-backend.el (newsticker-cache-filename): |
| 112 | * net/newst-treeview.el (newsticker-groups-filename): Fix | 117 | * net/newst-treeview.el (newsticker-groups-filename): |
| 113 | incorrect obsolescence declaration. | 118 | Fix incorrect obsolescence declaration. |
| 114 | 119 | ||
| 115 | * allout.el (allout-passphrase-hint-string): Likewise. | 120 | * allout.el (allout-passphrase-hint-string): Likewise. |
| 116 | (allout-init): Use a declare form to mark obsolete. | 121 | (allout-init): Use a declare form to mark obsolete. |
| @@ -147,8 +152,8 @@ | |||
| 147 | Enhancements for triple-quote string syntax. | 152 | Enhancements for triple-quote string syntax. |
| 148 | * progmodes/python.el (python-quote-syntax): Remove. | 153 | * progmodes/python.el (python-quote-syntax): Remove. |
| 149 | (python-syntax-propertize-function): New value. | 154 | (python-syntax-propertize-function): New value. |
| 150 | (python-syntax-count-quotes, python-syntax-stringify): New | 155 | (python-syntax-count-quotes, python-syntax-stringify): |
| 151 | functions. | 156 | New functions. |
| 152 | 157 | ||
| 153 | 2012-09-24 Chong Yidong <cyd@gnu.org> | 158 | 2012-09-24 Chong Yidong <cyd@gnu.org> |
| 154 | 159 | ||
| @@ -181,8 +186,8 @@ | |||
| 181 | * vc/vc-hooks.el (vc-default-registered): Don't use | 186 | * vc/vc-hooks.el (vc-default-registered): Don't use |
| 182 | vc-master-templates. | 187 | vc-master-templates. |
| 183 | 188 | ||
| 184 | * font-lock.el (font-lock-reference-face): Use | 189 | * font-lock.el (font-lock-reference-face): |
| 185 | define-obsolete-variable-alias. | 190 | Use define-obsolete-variable-alias. |
| 186 | 191 | ||
| 187 | * generic-x.el (rul-generic-mode): Use font-lock-constant-face. | 192 | * generic-x.el (rul-generic-mode): Use font-lock-constant-face. |
| 188 | * calendar/calendar.el (calendar-font-lock-keywords): | 193 | * calendar/calendar.el (calendar-font-lock-keywords): |
| @@ -213,8 +218,8 @@ | |||
| 213 | 218 | ||
| 214 | 2012-09-23 Roland Winkler <winkler@gnu.org> | 219 | 2012-09-23 Roland Winkler <winkler@gnu.org> |
| 215 | 220 | ||
| 216 | * textmodes/bibtex.el (bibtex-autokey-transcriptions): Transcribe | 221 | * textmodes/bibtex.el (bibtex-autokey-transcriptions): |
| 217 | also LaTeX hyphenation. | 222 | Transcribe also LaTeX hyphenation. |
| 218 | (bibtex-reformat): Bug fix. Do not quote twice the elements of | 223 | (bibtex-reformat): Bug fix. Do not quote twice the elements of |
| 219 | bibtex-reformat-previous-options. | 224 | bibtex-reformat-previous-options. |
| 220 | 225 | ||
| @@ -374,8 +379,8 @@ | |||
| 374 | (rst-section-tree, rst-section-tree-rec) | 379 | (rst-section-tree, rst-section-tree-rec) |
| 375 | (rst-section-tree-point): Refactor and document properly. | 380 | (rst-section-tree-point): Refactor and document properly. |
| 376 | (rst-imenu-find-adornments-for-position) | 381 | (rst-imenu-find-adornments-for-position) |
| 377 | (rst-imenu-convert-cell, rst-imenu-create-index): New | 382 | (rst-imenu-convert-cell, rst-imenu-create-index): |
| 378 | function. | 383 | New function. |
| 379 | 384 | ||
| 380 | 2012-09-20 Stefan Monnier <monnier@iro.umontreal.ca> | 385 | 2012-09-20 Stefan Monnier <monnier@iro.umontreal.ca> |
| 381 | 386 | ||
diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el index 3541c99f5fe..7858c183e4b 100644 --- a/lisp/emacs-lisp/gv.el +++ b/lisp/emacs-lisp/gv.el | |||
| @@ -269,7 +269,7 @@ The return value is the last VAL in the list. | |||
| 269 | ;;;###autoload | 269 | ;;;###autoload |
| 270 | (put 'gv-place 'edebug-form-spec 'edebug-match-form) | 270 | (put 'gv-place 'edebug-form-spec 'edebug-match-form) |
| 271 | ;; CL did the equivalent of: | 271 | ;; CL did the equivalent of: |
| 272 | ;;(gv-define-expand edebug-after (lambda (before index place) place)) | 272 | ;;(gv-define-macroexpand edebug-after (lambda (before index place) place)) |
| 273 | 273 | ||
| 274 | (put 'edebug-after 'gv-expander | 274 | (put 'edebug-after 'gv-expander |
| 275 | (lambda (do before index place) | 275 | (lambda (do before index place) |
diff --git a/lisp/emacs-lisp/testcover.el b/lisp/emacs-lisp/testcover.el index 3999529f7ac..5fdc8c55a85 100644 --- a/lisp/emacs-lisp/testcover.el +++ b/lisp/emacs-lisp/testcover.el | |||
| @@ -270,9 +270,9 @@ value, 'maybe if either is acceptable." | |||
| 270 | (setq id (nth 2 form)) | 270 | (setq id (nth 2 form)) |
| 271 | (setcdr form (nthcdr 2 form)) | 271 | (setcdr form (nthcdr 2 form)) |
| 272 | (setq val (testcover-reinstrument (nth 2 form))) | 272 | (setq val (testcover-reinstrument (nth 2 form))) |
| 273 | (if (eq val t) | 273 | (setcar form (if (eq val t) |
| 274 | (setcar form 'testcover-1value) | 274 | 'testcover-1value |
| 275 | (setcar form 'testcover-after)) | 275 | 'testcover-after)) |
| 276 | (when val | 276 | (when val |
| 277 | ;;1-valued or potentially 1-valued | 277 | ;;1-valued or potentially 1-valued |
| 278 | (aset testcover-vector id '1value)) | 278 | (aset testcover-vector id '1value)) |
| @@ -359,9 +359,9 @@ value, 'maybe if either is acceptable." | |||
| 359 | ,(nth 3 (cadr form)))) | 359 | ,(nth 3 (cadr form)))) |
| 360 | t) | 360 | t) |
| 361 | (t | 361 | (t |
| 362 | (if (eq (car (cadr form)) 'edebug-after) | 362 | (setq id (car (if (eq (car (cadr form)) 'edebug-after) |
| 363 | (setq id (car (nth 3 (cadr form)))) | 363 | (nth 3 (cadr form)) |
| 364 | (setq id (car (cadr form)))) | 364 | (cadr form)))) |
| 365 | (let ((testcover-1value-functions | 365 | (let ((testcover-1value-functions |
| 366 | (cons id testcover-1value-functions))) | 366 | (cons id testcover-1value-functions))) |
| 367 | (testcover-reinstrument (cadr form)))))) | 367 | (testcover-reinstrument (cadr form)))))) |
| @@ -379,9 +379,9 @@ value, 'maybe if either is acceptable." | |||
| 379 | ,(nth 3 (cadr form)))) | 379 | ,(nth 3 (cadr form)))) |
| 380 | 'maybe) | 380 | 'maybe) |
| 381 | (t | 381 | (t |
| 382 | (if (eq (car (cadr form)) 'edebug-after) | 382 | (setq id (car (if (eq (car (cadr form)) 'edebug-after) |
| 383 | (setq id (car (nth 3 (cadr form)))) | 383 | (nth 3 (cadr form)) |
| 384 | (setq id (car (cadr form)))) | 384 | (cadr form)))) |
| 385 | (let ((testcover-noreturn-functions | 385 | (let ((testcover-noreturn-functions |
| 386 | (cons id testcover-noreturn-functions))) | 386 | (cons id testcover-noreturn-functions))) |
| 387 | (testcover-reinstrument (cadr form)))))) | 387 | (testcover-reinstrument (cadr form)))))) |
| @@ -447,6 +447,12 @@ binding `testcover-vector' to the code-coverage vector for TESTCOVER-SYM | |||
| 447 | (defun testcover-after (idx val) | 447 | (defun testcover-after (idx val) |
| 448 | "Internal function for coverage testing. Returns VAL after installing it in | 448 | "Internal function for coverage testing. Returns VAL after installing it in |
| 449 | `testcover-vector' at offset IDX." | 449 | `testcover-vector' at offset IDX." |
| 450 | (declare (gv-expander (lambda (do) | ||
| 451 | (gv-letplace (getter setter) val | ||
| 452 | (funcall do getter | ||
| 453 | (lambda (store) | ||
| 454 | `(progn (testcover-after ,idx ,getter) | ||
| 455 | ,(funcall setter store)))))))) | ||
| 450 | (cond | 456 | (cond |
| 451 | ((eq (aref testcover-vector idx) 'unknown) | 457 | ((eq (aref testcover-vector idx) 'unknown) |
| 452 | (aset testcover-vector idx val)) | 458 | (aset testcover-vector idx val)) |