Subject: bug#4835: 23.1; Improper `Invalid face reference' messages. Performance degraded.

From: "Drew Adams" <[email-masked]>
Date: Sat, 31 Oct 2009 17:04:16 -0700

> > You haven't given one reason why this should be limited to 
> > a symbol. Show why `functionp' is problematic, and you
> > might have an argument.
> 
> I'm afraid I don't have time to wade through the sea of 
> words, but I've stated that it would be nice if a lambda
> expression can be used.  But I doubt it's worthwhile to
> change this for 23.2.

Why? Why wouldn't it be worthwhile to change `fboundp' to `functionp'?

> Assuming there's no third-party code relying on using a
> lambda expression (which does not work properly), for
> now we should simply document the case that works.

Then please consider fixing this to allow all functions for 23.3, if you don't
want to fix it now. Do I need to file another bug report for that?

In any case, _this_ bug is about the `Invalid face reference' messages and
performance degradation. I get those messages even when using a symbol function,
so this bug is not fixed by simply adding a restriction to symbols.

If I'm mistaken and have missed something, please advise. I will be happy if I
can get the function to work without provoking those bizarre error messages and
slowing Emacs to a crawl. I don't have a problem with using a symbol function
instead of a lambda.

IOW, for Emacs generally, I agree with you that "it would be nice if a lambda
expression can be used" at some point. But my concern now is the `Invalid face
reference' messages. I corrected the code to use a symbol, not a lambda, but the
problem remains.

Again, if I missed something, please let me know. I'm no expert on font-lock.
I'm hoping that I simply messed up somewhere, and there is not some bug in the
font-lock code that is causing this behavior. The latter would mean that I won't
be able to make this work in other Emacs versions, even after the bug is fixed.
The former would mean I would learn something; thank you; and be on my way.