Subject: bug#54437: 28.0.92; command-modes returns nil for native compiled functions

From: Andrea Corallo <[email-masked]>
Date: Thu, 17 Mar 2022 22:50:25 +0000

Eli Zaretskii <[email-masked]> writes:

>> From: Knut Anders Hatlen <[email-masked]>
>> Date: Thu, 17 Mar 2022 15:53:18 +0100
>> 
>> 
>> With Emacs built with --with-native-compilation, command-modes appear to
>> return nil for native compiled functions:
>> 
>> (progn
>>   (load "help-mode")
>>   (command-modes 'help-view-source))
>> => nil
>> 
>> When the function is interpreted or byte-compiled, it returns the
>> expected result:
>> 
>> (progn
>>   (load "help-mode.el")
>>   (command-modes 'help-view-source))
>> => (help-mode)
>> 
>> (progn
>>   (load "help-mode.elc")
>>   (command-modes 'help-view-source))
>> => (help-mode)
>
> Obviously, command-modes doesn't consider natively-compiled functions,
> but even if it did, it sounds like the information is lost at some
> point, even with loading *.el and *.elc files:
>
>   (progn
>     (load "help-mode.elc")
>     (interactive-form 'help-view-source))
>    => (interactive nil)
>
> Shouldn't interactive-form return the 3rd element as well?
>
> Andrea, can you please look at this?  This is about the Emacs 28
> pretest, so it's quite urgent.  TIA.

Hi Eli & all,

I'm reading this mail now while catching a plane, I won't be able to
actively look at it before the weekend.  If no one finds a solution
sooner I'll look into it as soon as I can.

Best Regards

  Andrea