Subject: bug#57394: 29.0.50; emacs commit 6ddcf67052545a0f77233f1a952dc90e296cda35 causes org-mode build to fail

From: Daniel Ortmann <[email-masked]>
Date: Wed, 24 Aug 2022 17:11:16 -0500

git clone https://git.savannah.gnu.org/git/emacs/org-mode.git git-org-mode
cd git-org-mode
dortmann@ddo-linux:git-org-mode$ ( set -eu ; make clean ; make ; make 
autoloads )
make -C lisp clean
make[1]: Entering directory '/home/dortmann/src/git-org-mode/lisp'
rm -f org-version.el org-loaddefs.el org-version.elc org-loaddefs.elc 
org-install.elc
rm -f *.elc
make[1]: Leaving directory '/home/dortmann/src/git-org-mode/lisp'
make -C doc clean
make[1]: Entering directory '/home/dortmann/src/git-org-mode/doc'
rm -f *.pdf *.html *.info *_letter.tex org-version.inc org-version.tex \
*.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.pg *.pgs *.toc \
*.tp *.tps *.vr *.vrs *.log *.ps
make[1]: Leaving directory '/home/dortmann/src/git-org-mode/doc'
make -C doc clean; make -C lisp clean;
make[1]: Entering directory '/home/dortmann/src/git-org-mode/doc'
rm -f *.pdf *.html *.info *_letter.tex org-version.inc org-version.tex \
*.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.pg *.pgs *.toc \
*.tp *.tps *.vr *.vrs *.log *.ps
make[1]: Leaving directory '/home/dortmann/src/git-org-mode/doc'
make[1]: Entering directory '/home/dortmann/src/git-org-mode/lisp'
rm -f org-version.el org-loaddefs.el org-version.elc org-loaddefs.elc 
org-install.elc
rm -f *.elc
make[1]: Leaving directory '/home/dortmann/src/git-org-mode/lisp'
make -C lisp compile
make[1]: Entering directory '/home/dortmann/src/git-org-mode/lisp'
rm -f org-version.el org-loaddefs.el org-version.elc org-loaddefs.elc 
org-install.elc
org-version: 9.5.4 (release_9.5.4-758-g3c11e9)
Loading /home/dortmann/src/git-org-mode/lisp/org-compat.el (source)...

Error: error ("Eager macro-expansion failure: (void-function 
byte-compile-warn-obsolete)")
debug-early-backtrace()
debug-early(error (error "Eager macro-expansion failure: (void-function 
byte-compile-warn-obsolete)"))
error("Eager macro-expansion failure: %S" (void-function 
byte-compile-warn-obsolete))
internal-macroexpand-for-load((defalias 'org-string-width #'(lambda 
(string &optional pixels) "Return width of STRING when displayed in the 
current buffer.\nReturn width in pixels when PIXELS is non-nil." (if 
(and (version< emacs-version "28") (not pixels)) (org--string-width-1 
string) (remove-text-properties 0 (length string) '(wrap-prefix t 
line-prefix t) string) (unless pixels (remove-text-properties 0 (length 
string) '(face t) string)) (let ((current-invisibility-spec (or (and 
(not (listp buffer-invisibility-spec)) buffer-invisibility-spec) (let 
(result) (dolist (el buffer-invisibility-spec) (unless (or (memq el 
'(org-fold-drawer org-fold-block org-fold-outline)) (and (listp el) 
(memq (car el) '(org-fold-drawer org-fold-block org-fold-outline)))) 
(push el result))) result))) (current-char-property-alias-alist 
char-property-alias-alist)) (with-temp-buffer (setq-local 
display-line-numbers nil) (setq-local buffer-invisibility-spec (if 
(listp current-invisibility-spec) (mapcar (lambda (el) (if (and (consp 
el) (cdr el)) (list (car el)) el)) current-invisibility-spec) 
current-invisibility-spec)) (setq-local char-property-alias-alist 
current-char-property-alias-alist) (let (pixel-width symbol-width) 
(with-silent-modifications (setf (buffer-string) string) (setq 
pixel-width (if (get-buffer-window (current-buffer)) (car 
(window-text-pixel-size nil (line-beginning-position) (point-max))) 
(set-window-buffer nil (current-buffer)) (car (window-text-pixel-size 
nil (line-beginning-position) (point-max))))) (unless pixels (setf 
(buffer-string) "a") (setq symbol-width (if (get-buffer-window 
(current-buffer)) (car (window-text-pixel-size nil 
(line-beginning-position) (point-max))) (set-window-buffer nil 
(current-buffer)) (car (window-text-pixel-size nil 
(line-beginning-position) (point-max))))))) (if pixels pixel-width (/ 
pixel-width symbol-width)))))))) t)
load-with-code-conversion("/home/dortmann/src/git-org-mode/lisp/org-macs.el" 
"/home/dortmann/src/git-org-mode/lisp/org-macs.el" nil t)
require(org-macs)
load-with-code-conversion("/home/dortmann/src/git-org-mode/lisp/org-compat.el" 
"/home/dortmann/src/git-org-mode/lisp/org-compat.el" nil nil)
load("org-compat.el")
command-line-1(("--eval" "(setq vc-handled-backends nil 
org-startup-folded nil org-element-cache-persistent nil)" "--eval" 
"(add-to-list 'load-path \".\")" "--eval" "(load \"org-compat.el\")" 
"--eval" "(load \"../mk/org-fixup.el\")" "--eval" "(org-make-org-version 
\"9.5.4\" \"release_9.5.4-758-g3c11e9\")"))
command-line()
normal-top-level()
Eager macro-expansion failure: (void-function byte-compile-warn-obsolete)
make[1]: *** [Makefile:72: org-version.el] Error 255
make[1]: Leaving directory '/home/dortmann/src/git-org-mode/lisp'
make: *** [mk/targets.mk:96: compile] Error 2
dortmann@ddo-linux:git-org-mode$ cd -
/home/dortmann/src/git-emacs-master
dortmann@ddo-linux:git-emacs-master$ git ^C
dortmann@ddo-linux:git-emacs-master$ git bisect bad
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[6ddcf67052545a0f77233f1a952dc90e296cda35] Make it possible to mark 
generalized variables as obsolete
dortmann@ddo-linux:git-emacs-master$

The emacs commit 6ddcf67052545a0f77233f1a952dc90e296cda35 seems to be
the problem. The issue is *not* with org-mode.

In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.22.30, cairo version 1.15.12) of 2022-08-24 built on ddo-linux
Repository revision: 48aacbf292fbe8d4be7761f83bf87de93497df27
Repository branch: HEAD
Windowing system distributor 'The X.Org Foundation', version 11.0.12101003
System Description: Oracle Linux Server 8.6

Configured using:
'configure --with-mailutils --with-x-toolkit=yes --with-wide-int
--with-imagemagick --with-json=ifavailable --without-xaw3d
--with-native-compilation --with-xwidgets --with-be-cairo --with-x'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ IMAGEMAGICK
JPEG LIBSELINUX LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM
XINPUT2 XPM XWIDGETS GTK3 ZLIB

Important settings:
value of $LC_COLLATE: C
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix

Major mode: Text

Minor modes in effect:
winner-mode: t
savehist-mode: t
helm-mode: t
helm-minibuffer-history-mode: t
shell-dirtrack-mode: t
display-time-mode: t
delete-selection-mode: t
auto-image-file-mode: t
async-bytecomp-package-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
column-number-mode: t
line-number-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t

Load-path shadows:
/home/dortmann/.emacs.d/elpa/transient-20220717.1713/transient hides 
/usr/local/share/emacs/29.0.50/lisp/transient

Features:
(shadow sort mail-extr gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime
smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom
gnus-group gnus-undo gnus-start gnus-dbus gnus-cloud nnimap nnmail
mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win
tramp-archive tramp-gvfs tramp-cache time-stamp zeroconf dbus xml
emacsbug message yank-media puny rfc822 mml mml-sec epa derived epg
rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums comp
comp-cstr warnings cl-extra dired-aux server jka-compr winner savehist
avoid helm-mode helm-misc helm-files image-dired xdg image-mode exif
filenotify tramp tramp-loaddefs trampver tramp-integration cus-edit pp
icons files-x tramp-compat shell pcomplete parse-time iso8601 ls-lisp
helm-buffers helm-occur helm-tags helm-locate helm-grep helm-regexp
format-spec helm-utils helm-help helm-types helm helm-global-bindings
helm-easymenu edmacro kmacro helm-core easy-mmode helm-source
helm-multi-match helm-lib grep compile comint ansi-color gnus nnheader
gnus-util text-property-search time-date mail-utils range mm-util
mail-prsvr wid-edit time delsel image-file image-converter
async-bytecomp async cus-load rx dired-x dired dired-loaddefs generic-x
csv-mode-autoloads geiser-chicken-autoloads geiser-impl help-fns
radix-tree help-mode geiser-custom geiser-base ring geiser-autoloads
gnuplot-autoloads helm-autoloads helm-perldoc-autoloads
deferred-autoloads helm-core-autoloads async-autoloads
transient-autoloads info compat-autoloads package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile cconv url-vars cl-loaddefs cl-lib
rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs faces cus-face macroexp files window text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads xwidget-internal dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process
native-compile emacs)

Memory information:
((conses 16 381420 16212)
(symbols 48 20966 0)
(strings 32 110121 10965)
(string-bytes 1 4073737)
(vectors 16 62288)
(vector-slots 8 902708 29223)
(floats 8 359 135)
(intervals 56 6889 723)
(buffers 992 17))