emacs/lisp/textmodes
Gemini Lasswell d79cf638f2 Rewrite Testcover's internals, fixing several bugs
* lisp/emacs-lisp/testcover.el: Rewrite the internals of Testcover
to analyze instrumented code instead of reinstrumenting it.  Use new
hooks in Edebug to collect code coverage information at runtime
using Edebug's instrumentation.
Includes fixes for: (bug#11307) (bug#24509) (bug#24688) (bug#24743)
(bug#25316) (bug#25326).
(testcover-compose-functions): Remove mapcar.
(testcover-start, testcover-this-defun): Analyze code instead of
reinstrumenting it. Set edebug-behavior for each definition.
(testcover--read, testcover-1value, testcover-reinstrument)
(testcover-reinstrument-list, testcover-reinstrument-compose):
Deleted.
(testcover-after-instrumentation, testcover-init-definition)
(testcover-before): New functions.
(testcover-enter): Change call signature to match edebug-enter.
(testcover-after, testcover-mark): Add handling of 'maybe and
'noreturn.
(testcover-analyze-coverage, testcover-analyze-coverage-progn)
(testcover-analyze-coverage-edebug-after)
(testcover-analyze-coverage-wrapped-form)
(testcover-analyze-coverage-wrapped-application)
(testcover-analyze-coverage-compose)
(testcover-analyze-coverage-backquote)
(testcover-analyze-coverage-backquote-form)
(testcover-coverage-combine): New functions to analyze instrumented
code.

* lisp/emacs-lisp/gv.el: Modify edebug-after's gv-expander to
instrument in the setter as well as the getter.

* test/lisp/emacs-lisp/testcover-tests.el
(testcover-tests-run-test-case): Use `edebug-default-enter'
instead of `edebug-enter' to detect Edebug invocation
during tests.

* test/lisp/emacs-lisp/testcover-resources/testcases.el
(constants-bug-25316)
(customize-defcustom-bug-25326)
(1-value-symbol-bug-25316)
(quotes-within-backquotes-bug-25316)
(backquote-1value-bug-24509)
(pcase-bug-24688)
(defun-in-backquote-bug-11307-and-24743)
(closure-1value-bug)
(backquoted-vector-bug-25316)
(vector-in-macro-spec-bug-25316)
(mapcar-is-not-compose): Remove expected failure tags.
(function-with-edebug-spec-bug-25316): Remove expected failure tag
and modify expected result.
(quoted-backquote): New test.

* lisp/textmodes/rst.el: Remove workarounds for bugs in Testcover.
(rst-testcover-defcustom): Deleted.

* lisp/subr.el (1value): Remove incorrect description of
testcover-1value from docstring, replace with description of
Testcover's treatment of 1value.
2017-10-08 16:08:49 -07:00
..
artist.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
bib-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
bibtex-style.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
bibtex.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
conf-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
css-mode.el Keep eww buffer current when looking up CSS on MDN 2017-10-01 20:27:07 +02:00
dns-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
enriched.el Disable execution of unsafe Lisp by Enriched Text mode 2017-09-16 12:45:24 +03:00
fill.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
flyspell.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
ispell.el Fix errors in flyspell-post-command-hook 2017-09-19 19:32:09 +03:00
less-css-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
makeinfo.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
mhtml-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
nroff-mode.el Prefer HTTPS to HTTP for gnu.org 2017-10-01 19:59:01 -07:00
page-ext.el * lisp/textmodes/page-ext.el: Misc cleanup, add RET binding 2017-09-27 13:00:44 -04:00
page.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
paragraphs.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
picture.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
po.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
refbib.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
refer.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
refill.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-auc.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-cite.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-dcr.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-global.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-index.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-parse.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-ref.el Make FILENAME argument of 'file-name-base' mandatory 2017-09-24 10:02:00 +02:00
reftex-sel.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-toc.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex-vars.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
reftex.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
remember.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
rst.el Rewrite Testcover's internals, fixing several bugs 2017-10-08 16:08:49 -07:00
sgml-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
table.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
tex-mode.el Prefer HTTPS to HTTP for gnu.org 2017-10-01 19:59:01 -07:00
texinfmt.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
texinfo.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
texnfo-upd.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
text-mode.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
tildify.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
two-column.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
underline.el Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00