GNU bug report logs -
#62762
'make' often errors with "Org version mismatch" after pulling a new version of the code
Previous Next
Full log
Message #74 received at 62762 <at> debbugs.gnu.org (full text, mbox):
> From: Ihor Radchenko <yantar92 <at> posteo.net>
> Cc: bzg <at> gnu.org, dmitry <at> gutov.dev, 62762 <at> debbugs.gnu.org
> Date: Fri, 21 Apr 2023 15:28:02 +0000
>
> Eli Zaretskii <eliz <at> 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?
This bug report was last modified 1 year and 258 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.