Test warning suppressions with lexical binding
* test/lisp/emacs-lisp/bytecomp-tests.el (test-byte-comp-compile-and-load): Add lexical cookie to file being compiled as part of the test. (bytecomp-test--with-suppressed-warnings): Comment out the test for suppressing warnings when attempting to let-bind `nil`, as that (1) doesn't work and (2) is a silly thing to do anyway.
This commit is contained in:
parent
3cbdd59146
commit
138d2f22f7
1 changed files with 14 additions and 6 deletions
|
@ -747,6 +747,7 @@ byte-compiled. Run with dynamic binding."
|
|||
(ert-with-temp-file elcfile
|
||||
:suffix ".elc"
|
||||
(with-temp-buffer
|
||||
(insert ";;; -*- lexical-binding: t -*-\n")
|
||||
(dolist (form forms)
|
||||
(print form (current-buffer)))
|
||||
(write-region (point-min) (point-max) elfile nil 'silent))
|
||||
|
@ -1227,12 +1228,19 @@ literals (Bug#20852)."
|
|||
'((lexical prefixless))
|
||||
"global/dynamic var .prefixless. lacks")
|
||||
|
||||
(test-suppression
|
||||
'(defun foo()
|
||||
(let ((nil t))
|
||||
(message-mail)))
|
||||
'((constants nil))
|
||||
"Warning: attempt to let-bind constant .nil.")
|
||||
;; FIXME: These messages cannot be suppressed reliably right now,
|
||||
;; but attempting mutate `nil' or `5' is a rather daft thing to do
|
||||
;; in the first place. Preventing mutation of constants such as
|
||||
;; `most-positive-fixnum' makes more sense but the compiler doesn't
|
||||
;; warn about that at all right now (it's caught at runtime, and we
|
||||
;; allow writing the same value).
|
||||
;;
|
||||
;; (test-suppression
|
||||
;; '(defun foo()
|
||||
;; (let ((nil t))
|
||||
;; (message-mail)))
|
||||
;; '((constants nil))
|
||||
;; "Warning: attempt to let-bind constant .nil.")
|
||||
|
||||
(test-suppression
|
||||
'(progn
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue