diff options
Diffstat (limited to 'test/lisp/emacs-lisp/comp-cstr-tests.el')
-rw-r--r-- | test/lisp/emacs-lisp/comp-cstr-tests.el | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/test/lisp/emacs-lisp/comp-cstr-tests.el b/test/lisp/emacs-lisp/comp-cstr-tests.el index 0b10b7f80a1..bc772fcb0d2 100644 --- a/test/lisp/emacs-lisp/comp-cstr-tests.el +++ b/test/lisp/emacs-lisp/comp-cstr-tests.el @@ -83,11 +83,22 @@ ((or (member foo bar) (not (member foo))) . t) ;; Intentionally conservative, see `comp-cstr-union'. ((or symbol (not sequence)) . t) + ((or symbol (not symbol)) . t) + ;; Conservative. + ((or symbol (not sequence)) . t) ((or vector (not sequence)) . (not sequence)) ((or (integer 1 10) (not (integer * 5))) . (integer 1 *)) - ((or symbol (integer 1 10) (not (integer * 5))) . (integer 1 *)) + ((or symbol (integer 1 10) (not (integer * 5))) . (or symbol (integer 1 *))) + ((or (not symbol) (integer 1 10) (not (integer * 5))) . (not (or symbol (integer * 0)))) ((or symbol (not (member foo))) . (not (member foo))) - ((or (not symbol) (not (member foo))) . (not symbol))) + ((or (not symbol) (not (member foo))) . (not symbol)) + ;; Conservative. + ((or (not (member foo)) string) . (not (member foo))) + ;; Conservative. + ((or (member foo) (not string)) . (not string)) + ((or (not (integer 1 2)) integer) . integer) + ((or (not (integer 1 2)) (not integer)) . (not integer)) + ((or (integer 1 2) (not integer)) . (not (or integer (integer * 0) (integer 3 *))))) "Alist type specifier -> expected type specifier.") (defmacro comp-cstr-synthesize-tests () |