GNU bug report logs - #51382
29.0.50; org-offer-links-in-entry is incompatible with native-compile

Previous Next

Package: emacs;

Reported by: luangruo <at> yahoo.com

Date: Mon, 25 Oct 2021 04:26:01 UTC

Severity: normal

Tags: moreinfo

Found in version 29.0.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Caleb Chase <chase.caleb <at> gmail.com>
To: akrl <at> sdf.org, 51382 <at> debbugs.gnu.org
Subject: bug#51382: 29.0.50; org-offer-links-in-entry is incompatible with native-compile
Date: Wed, 27 Oct 2021 10:13:49 -0500
Here's a trivial reproduction:

1. Create an org file, e.g. /tmp/test.org. See end of this message for
an example, but essentially any org file with a heading that contains
multiple links somewhere within its contents.
2. Ensure that org.el is natively compiled
3. Run "emacs -Q"
4. "C-x C-f" to open the test file
5. Move point to beginning of the header
6. "C-c C-o 2" to open the second link
7. Bug occurs: first link is opened regardless of choice in the previous step

Workaround:
1. Disable native comp for org.el in your early-init.el: (setq
native-comp-deferred-compilation-deny-list (list (rx "org/org.el"
string-end)))
   - Note: I think putting this early on in init.el would work too, so
long as it is set before org.el is loaded? Not sure.
2. Delete the native-compiled version of org.el. Check
native-comp-eln-load-path to determine the right directories, then in
each one run something like: find the-eln-directory -name
'org-[0-9]*\.eln' -delete

I'm not positive if both steps of the workaround are necessary or just
one of them.

---
Example contents for /tmp/test.org begin on the next line:
* Heading
  - https://debbugs.gnu.org/cgi/bugreport.cgi?bug=51382
  - https://www.gnu.org/software/emacs/




This bug report was last modified 2 years and 252 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.