unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
To: emacs-devel@gnu.org
Subject: bizarre byte-compile issue, possibly due to EIEIO
Date: Fri, 01 Apr 2011 15:29:38 -0500	[thread overview]
Message-ID: <87hbahww99.fsf@lifelogs.com> (raw)

Attached is a patch against the Gnus trunk (it applies in the Emacs
trunk, too) that introduces registry.el, a EIEIO-using library to manage
loose collections of data, and rewrites gnus-registry.el to use it.  I
can't push my changes to the Gnus trunk to demonstrate the problem
because gnus.org seems to be down for me.

Anyhow.  The problem is that something is screwed up in the Gnus build
and I think it's an Emacs byte-compile issue.  I'm using an Emacs build
from this morning, before the lexbind merge.

Here's the sequence (Gnus trunk):

git clone http://git.gnus.org/gnus.git
cd gnus

patch -p0 < registry.patch
# should modify lisp/{gnus-registry,spam,nnregistry}.el and create lisp/registry.el

configure, make, etc...

cd lisp/
make
# generates registry.elc among others
emacs -batch -L . -l ert.el -l gnus-registry.el -f ert-run-tests-batch-and-exit
# fails 2 of 5 tests

rm registry.elc
emacs -batch -L . -l ert.el -l gnus-registry.el -f ert-run-tests-batch-and-exit
# passes 5 of 5 tests

In other words, the registry.elc file is breaking the tests.  I can't
figure out what's wrong, but it seems EIEIO-related.  If I try to
edebug, that evaluates the problematic methods (e.g. `registry-lookup')
and then they don't exhibit the problem.

Using "(eval-when-compile (require 'registry))" instead of 
"(require 'registry)" doesn't help.  All the registry.el ERT tests pass.

Does anyone have ideas about what's wrong?  It's driving me crazy :)

Thanks
Ted




             reply	other threads:[~2011-04-01 20:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-01 20:29 Ted Zlatanov [this message]
2011-04-01 20:31 ` bizarre byte-compile issue, possibly due to EIEIO Ted Zlatanov
2011-04-01 20:50 ` Lars Magne Ingebrigtsen
2011-04-02  0:54 ` Ted Zlatanov
2011-04-02 20:34   ` Lars Magne Ingebrigtsen
2011-04-04 13:47     ` Ted Zlatanov
2011-04-04 15:26       ` David Engster
2011-04-02 21:32   ` David Engster
2011-04-03  9:34     ` David Engster
2011-04-04 10:18       ` Ted Zlatanov
2011-04-04 15:34         ` David Engster
2011-04-05 15:56           ` Ted Zlatanov
2011-04-05 16:38             ` David Engster
2011-04-05 17:55               ` Ted Zlatanov
2011-04-05 18:31                 ` David Engster
2011-04-05 18:44                   ` Ted Zlatanov
2011-04-05 16:14           ` Ted Zlatanov
2011-04-05 17:57             ` Ted Zlatanov
2011-04-04 16:29       ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87hbahww99.fsf@lifelogs.com \
    --to=tzz@lifelogs.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).