diff --git a/lisp/emacs-lisp/comp-cstr.el b/lisp/emacs-lisp/comp-cstr.el index 67c72c8ce2b..39551cbac4f 100644 --- a/lisp/emacs-lisp/comp-cstr.el +++ b/lisp/emacs-lisp/comp-cstr.el @@ -336,9 +336,13 @@ Return them as multiple value." (nreverse res)))) (defun comp-supertypes (type) - "Return the ordered list of supertypes of TYPE." - (or (assq type (comp-cstr-ctxt-typeof-types comp-ctxt)) - (error "Type %S missing from typeof-types!" type))) + "Return the ordered list of supertypes of TYPE." + (or (assq type (comp-cstr-ctxt-typeof-types comp-ctxt)) + (progn + (display-warning + 'native-compiler + (format "Unknown type %S" type)) + '(t)))) (defun comp--union-typesets (&rest typesets) "Union types present into TYPESETS." diff --git a/test/src/comp-resources/comp-test-funcs.el b/test/src/comp-resources/comp-test-funcs.el index 3f7e7d1ab4b..837ef018efb 100644 --- a/test/src/comp-resources/comp-test-funcs.el +++ b/test/src/comp-resources/comp-test-funcs.el @@ -579,6 +579,9 @@ (comp-test-73270-child3 'child3) (comp-test-73270-child4 'child4))) +(defun comp-test-76573-1-f () + (record 'undeclared-type)) + ;;;;;;;;;;;;;;;;;;;; ;; Tromey's tests ;;