From: Andrea Corallo Date: Mon, 14 Sep 2020 19:27:26 +0000 (+0200) Subject: * Remove type check emission from type hints low level primitives X-Git-Tag: emacs-28.0.90~2727^2~440 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a3dc11e9ccd48beb84adfe79ff28143c1682f690;p=emacs.git * Remove type check emission from type hints low level primitives These have to be emitted by higher level primitves as `cl-the'. * lisp/emacs-lisp/comp.el (comp-hint-fixnum, comp-hint-cons): Do not emit type checks. --- diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index e1920dbc033..831af3793ec 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -2487,20 +2487,18 @@ Prepare every function for final compilation and drive the C back-end." ;;; Compiler type hints. -;; These are public entry points be used in user code to give comp suggestion -;; about types. -;; These can be used to implement CL style 'the', 'declare' or something like. +;; Public entry points to be used by user code to give comp +;; suggestions about types. These are used to implement CL style +;; `cl-the' and hopefully parameter type declaration. ;; Note: types will propagates. ;; WARNING: At speed >= 2 type checking is not performed anymore and suggestions ;; are assumed just to be true. Use with extreme caution... (defun comp-hint-fixnum (x) - (unless (fixnump x) - (signal 'wrong-type-argument x))) + x) (defun comp-hint-cons (x) - (unless (consp x) - (signal 'wrong-type-argument x))) + x) ;; Some entry point support code.