Subject: Re: bug#3984: 23.0.96; defadvice of call-interactively defeats interactive-p

From: Stefan Monnier <[email-masked]>
Date: Fri, 31 Jul 2009 15:31:54 -0400

> Unfortunately, the code with `interactive-p' is not mine.
> The defadvice is mine, but it needs to work for user functions,
> including those that call `interactive-p' or `called-interactively-p'.

> Is there no way the Emacs implementation could be fixed to handle this
> better?  Couldn't it take into consideration the `ad-*' stuff that
> results from advising `call-interactively'?  IOW, couldn't it look for
> `call-interactively' in its advised form also?

There's probably some way to make it work, of course.  Note that the
same problem is likely to appear with other redefinitions of
call-interactively (e.g. profiling, tracing, ...).
Of course, another way to break these things is also to advise (and/or
profile/trace/...) interactive-p.

        Stefan