Add tests for some byte-compiler warnings
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-warn/warn-interactive-only\.el) (bytecomp-warn/warn-obsolete-defun\.el) (bytecomp-warn/warn-obsolete-hook\.el) (bytecomp-warn/warn-obsolete-variable-same-file\.el) (bytecomp-warn/warn-obsolete-variable\.el): New tests. * test/lisp/emacs-lisp/bytecomp-resources/warn-interactive-only.el: * test/lisp/emacs-lisp/bytecomp-resources/warn-obsolete-defun.el: * test/lisp/emacs-lisp/bytecomp-resources/warn-obsolete-hook.el: * test/lisp/emacs-lisp/bytecomp-resources/warn-obsolete-variable-same-file.el: * test/lisp/emacs-lisp/bytecomp-resources/warn-obsolete-variable.el: New files.
This commit is contained in:
parent
90a543e630
commit
4457b9590c
6 changed files with 49 additions and 0 deletions
|
@ -0,0 +1,3 @@
|
|||
;;; -*- lexical-binding: t -*-
|
||||
(defun foo ()
|
||||
(next-line))
|
|
@ -0,0 +1,8 @@
|
|||
;;; -*- lexical-binding: t -*-
|
||||
|
||||
(defun foo-obsolete ()
|
||||
(declare (obsolete nil "99.99"))
|
||||
nil)
|
||||
|
||||
(defun foo ()
|
||||
(foo-obsolete))
|
|
@ -0,0 +1,3 @@
|
|||
;;; -*- lexical-binding: t -*-
|
||||
(defun foo ()
|
||||
(add-hook 'bytecomp--tests-obsolete-var #'next-line))
|
|
@ -0,0 +1,13 @@
|
|||
;;; -*- lexical-binding: t -*-
|
||||
|
||||
(defvar foo-obsolete nil)
|
||||
(make-obsolete-variable 'foo-obsolete nil "99.99")
|
||||
|
||||
;; From bytecomp.el:
|
||||
;; If foo.el declares `toto' as obsolete, it is likely that foo.el will
|
||||
;; actually use `toto' in order for this obsolete variable to still work
|
||||
;; correctly, so paradoxically, while byte-compiling foo.el, the presence
|
||||
;; of a make-obsolete-variable call for `toto' is an indication that `toto'
|
||||
;; should not trigger obsolete-warnings in foo.el.
|
||||
(defun foo ()
|
||||
foo-obsolete)
|
|
@ -0,0 +1,4 @@
|
|||
;;; -*- lexical-binding: t -*-
|
||||
|
||||
(defun foo ()
|
||||
bytecomp--tests-obsolete-var)
|
|
@ -560,6 +560,24 @@ Subtests signal errors if something goes wrong."
|
|||
|
||||
(bytecomp--define-warning-file-test "warn-free-variable-reference.el" "free.*bar")
|
||||
|
||||
(bytecomp--define-warning-file-test "warn-obsolete-defun.el"
|
||||
"foo-obsolete.*obsolete function.*99.99")
|
||||
|
||||
(defvar bytecomp--tests-obsolete-var nil)
|
||||
(make-obsolete-variable 'bytecomp--tests-obsolete-var nil "99.99")
|
||||
|
||||
(bytecomp--define-warning-file-test "warn-obsolete-hook.el"
|
||||
"bytecomp--tests-obs.*obsolete.*99.99")
|
||||
|
||||
(bytecomp--define-warning-file-test "warn-obsolete-variable-same-file.el"
|
||||
"foo-obs.*obsolete.*99.99" t)
|
||||
|
||||
(bytecomp--define-warning-file-test "warn-obsolete-variable.el"
|
||||
"bytecomp--tests-obs.*obsolete.*99.99")
|
||||
|
||||
(bytecomp--define-warning-file-test "warn-interactive-only.el"
|
||||
"next-line.*interactive use only.*forward-line")
|
||||
|
||||
(ert-deftest test-eager-load-macro-expansion-eval-when-compile ()
|
||||
;; Make sure we interpret eval-when-compile forms properly. CLISP
|
||||
;; and SBCL interpreter eval-when-compile (well, the CL equivalent)
|
||||
|
|
Loading…
Add table
Reference in a new issue