Subject: Re: bug#5863: defadvice in byte compiled file does not work

From: Lennart Borgman <[email-masked]>
Date: Fri, 9 Apr 2010 02:19:27 +0200

On Fri, Apr 9, 2010 at 1:13 AM, Lennart Borgman
<[email-masked]> wrote:
> On Thu, Apr 8, 2010 at 11:52 PM, Andreas Schwab <[email-masked]> wrote:
>> Lennart Borgman <[email-masked]> writes:
>>
>>> On Thu, Apr 8, 2010 at 7:04 PM, Andreas Schwab <[email-masked]> wrote:
>>>> Lennart Borgman <[email-masked]> writes:
>>>>
>>>>> The info page I pointed to says that defadvice should work for
>>>>> primitives called from lisp code.
>>>>
>>>> The primitive is no longer called from lisp code when byte compiled.
>>>
>>>
>>> I think that is wrong. Can you point me to something that support your
>>> statement?
>>
>> See Fbyte_code.
>
>
> Hm, thanks, yes I can see how it is implemented now and I can see good
> reasons for optimizing it this way. However the manual does not say
> that byte compilation removes the check during execution if primitives
> are adviced or not.
>
> And I am a bit irritated that it doesn't since I trusted the manual.... ;-)
>
> Could we please correct the manual?
>
> And could we as soon as possible please remove the possibility to
> defadvice primitives at all? The kind of bugs produced by different
> execution paths for evaled and byte compiled code is rather difficult
> to nail down.
>
>
> (I have to do a totally different workaround instead of defadvice
> widen. But that is another problem.)

I have done a new workaround. This depends on the bug that primitives
can be defadviced in evaled code. So please do not correct the bug
without giving any possibility to avoid (widen).... ;-)