bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#62762: 'make' often errors with "Org version mismatch" after pulling


From: Eli Zaretskii
Subject: bug#62762: 'make' often errors with "Org version mismatch" after pulling a new version of the code
Date: Sat, 22 Apr 2023 12:49:54 +0300

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: bzg@gnu.org, dmitry@gutov.dev, 62762@debbugs.gnu.org
> Date: Fri, 21 Apr 2023 15:28:02 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > This doesn't seem to work as expected here?  Here's what I get with
> > the latest update from master:
> >
> >   '../src/emacs.exe' -batch --no-site-file --no-site-lisp --eval "(setq 
> > load-prefer-newer t byte-compile-warnings 'all)"  --eval "(setq 
> > org--built-in-p t)"  -f batch-byte-compile org/org-element.el
> >   Warning (emacs): Org version mismatch.  Org loading aborted.
> >   This warning usually appears when a built-in Org version is loaded prior 
> > to the more recent Org version.
> >
> >   Version mismatch is commonly encountered in the following situations:
> >
> > This seems to indicate that the compilation is aborted even though the
> > command line sets org--built-in-p non-nil.  What went wrong here?
> 
> I see nothing wrong in the new version of the `org-assert-version'
> macro. The only explanation I can come up with is that
> `org-assert-version' from an older Org version somehow got mixed in.

I think it's the defconst thingy.  E.g., with foo.el which says

  (defconst my-foo nil)

I cannot override the value from the command line:

  emacs -Q -batch --eval "(setq my-foo t)" -l foo.el --eval "(message \"%s\" 
my-foo)"
   => nil

But if I replace defconst with defvar, it yields t, as I'd expect.

So I think org--built-in-p should be a defvar, not defconst.  Or maybe
you can teach me how to override a defconst?  Stefan, any ideas?





reply via email to

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