From xemacs-m  Sat Mar 22 13:29:53 1997
Received: from mailbox2.ucsd.edu (mailbox2.ucsd.edu [132.239.1.54])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id NAA29764
	for <xemacs-beta@xemacs.org>; Sat, 22 Mar 1997 13:29:52 -0600 (CST)
Received: from sdnp5.ucsd.edu (sdnp5.ucsd.edu [132.239.79.10]) by mailbox2.ucsd.edu (8.8.5/8.6.9) with SMTP id LAA19068 for <xemacs-beta@xemacs.org>; Sat, 22 Mar 1997 11:29:53 -0800 (PST)
Received: by sdnp5.ucsd.edu (SMI-8.6/SMI-SVR4)
	id LAA02951; Sat, 22 Mar 1997 11:31:48 -0800
Sender: dmoore@sdnp5.ucsd.edu
To: xemacs-beta@xemacs.org
Subject: Re: Redisplay bug, efs invalid-function bug
References: <199703221319.FAA05610@bittersweet.inetarena.com> <199703221853.LAA20614@branagh.ta52.lanl.gov>
X-Face: "oX;zS#-JU$-,WKSzG.1gGE]x^cIg!hW.dq>.f6pzS^A+(k!T|M:}5{_%>Io<>L&{hO7W4cicOQ|>/lZ1G(m%7iaCf,6Qgk0%%Bz7b2-W3jd0m_UG\Y;?]}4s0O-U)uox>P3JN)9cm]O\@,vy2e{`3pb!"pqmRy3peB90*2L
Mail-Copies-To: never
Mime-Version: 1.0 (generated by tm-edit 7.106)
Content-Type: text/plain; charset=US-ASCII
From: David Moore <dmoore@ucsd.edu>
Date: 22 Mar 1997 11:31:48 -0800
In-Reply-To: "John A. Turner"'s message of Sat, 22 Mar 1997 11:53:58 -0700
Message-ID: <rvk9mzrae3.fsf@sdnp5.ucsd.edu>
Lines: 32
X-Mailer: Gnus v5.4.33/XEmacs 19.15(beta103)

"John A. Turner" <turner@branagh.ta52.lanl.gov> writes:

> Karl M. Hegbloom writes:
>  > 
>  >  I tried 'efs', and it goes blonk, "(invalid-function (macro
>  > . #<compiled-function (from "advice.elc"...", so I set
>  > 'debug-on-error' and did it, and noticed that when I scroll the
>  > debugger window, the tops of accented characters are left behind.  Off
>  > by one?
> 
> I think I'm seeing the same thing.  Backtrace:
> 
> Signaling: (invalid-function (macro . #<compiled-function (from "advice.elc") (function) "...(4)" [ad-get-advice-info function] 2>))
>   ad-is-advised(expand-file-name)
>   efs-overwrite-fn("efs" expand-file-name)

Looks like efs was compiled with an outdated version of advice?  Oh, I
see the problem.  Because efs only does a (featurep 'advice) instead of
actually requiring it, the byte compiler has no way of knowing that that
ad-is-advised is a macro and so calls to it like a function.  And that
breaks.

Probably something like this in efs-ovwrt.el might help:

(eval-when-compile (require 'advice))


-- 
David Moore <dmoore@ucsd.edu>       | Computer Systems Lab      __o
UCSD Dept. Computer Science - 0114  | Work: (619) 534-8604    _ \<,_
La Jolla, CA 92093-0114             | Fax:  (619) 534-1445   (_)/ (_)
<URL:http://oj.egbt.org/dmoore/>    | In a cloud bones of steel.

