emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Noisy byte compilation on master


From: David Engster
Subject: Re: Noisy byte compilation on master
Date: Sun, 15 Feb 2015 16:58:16 +0100
User-agent: Gnus/5.13001 (Ma Gnus v0.10) Emacs/24.4 (gnu/linux)

Stefan Monnier writes:
>>>> Alternately, non-core CEDET can provide a compatibility file that
>>>> defines cl-defmethod etc in terms of defmethod for older emacsen.
>>> Hmm... that's an idea.
>>> I could provide a cl-generic.el on GNU ELPA to provide cl-defmethod via
>>> EIEIO, and then CEDET could make use of the new macros.
>>> WDYT?
>> Fine with me. We could also put it in CEDET upstream so people don't
>> have to install it.
>
> I have now added a cl-generic forward compatibility package to GNU ELPA.
> It should hopefully work for any Emacs with EIEIO.

Well, it just occured to me that it's not that terribly useful to have
it in ELPA, as you need that macro during byte-compilation, and ELPA
packages are not available from 'emacs -Q'. So I guess I'll have to
install in CEDET upstream.

The bigger problem is that now I get a ton of warnings during CEDET
compilation because you use 'labels' instead of 'cl-labels', but with
good reason, as the commentary says. Not sure what to do about that...

>> Note that I currently have no way of syncing CEDET with Emacs.
>
> Is there something we can do about that?

We need a plan how to integrate CEDET easier now that both projects
moved to Git. I'm leaning towards importing lisp/cedet from a stable
upstream branch as a subtree. This would at least take care of merging
from CEDET to Emacs. The other way round is not as easy, but not
terribly difficult either.

The alternative would be that built-in ELPA thingy, but that's not
available yet. Also, if I understand you correctly, this would mean that
core packages cannot depend on CEDET. However, the advantage would be
that I could ditch a beloved pet-peeve of mine, namely editing that file
that shall not be named (hint: it logs changes).

>> So if you have a script or similar to change the calling convention,
>> please tell me and I run it over the upstream code.
>
> I used the sed script below along with:
>
>     for f in $(grep -l '(defmethod' lisp/cedet/**/*.el); do
>         echo $f
>         (rm $f; ./_cl-generic-rewrite.sed >$f) <$f
>     done

Thanks, that's very useful.

I've now pretty much removed EIEIO from CEDET upstream, so its
development is now solely in Emacs. On thing less to merge. Juhu!

-David



reply via email to

[Prev in Thread] Current Thread [Next in Thread]