From 32a079aef290fdc8913c1ce4e8910e63e6ff6dcc Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Mon, 6 Apr 2020 20:03:34 +0100 Subject: [PATCH] * lisp/emacs-lisp/comp.el (comp-c-func-name): Fix for M-x disassemble --- lisp/emacs-lisp/comp.el | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index 3f4dba6b1ff..9dc775bb6ac 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -474,14 +474,18 @@ Put PREFIX in front of it." "-" "_" orig-name)) (human-readable (replace-regexp-in-string (rx (not (any "0-9a-z_"))) "" human-readable))) - ;; Prevent C namespace conflicts. - (cl-loop - with h = (comp-ctxt-funcs-h comp-ctxt) - for i from 0 - for c-sym = (concat prefix crypted "_" human-readable "_" - (number-to-string i)) - unless (gethash c-sym h) - return c-sym))) + (if comp-ctxt + ;; Prevent C namespace conflicts. + (cl-loop + with h = (comp-ctxt-funcs-h comp-ctxt) + for i from 0 + for c-sym = (concat prefix crypted "_" human-readable "_" + (number-to-string i)) + unless (gethash c-sym h) + return c-sym) + ;; When called out of a compilation context (ex disassembling) + ;; pick the first one. + (concat prefix crypted "_" human-readable "_0")))) (defun comp-decrypt-arg-list (x function-name) "Decript argument list X for FUNCTION-NAME." -- 2.39.5