Subject: 28.0.50; [feature/native-comp] (d3a399dd) native-comp bootstrap failure
From: Michael Welsh Duggan <[email-masked]>
To: [email-masked]
Date: Sun, 14 Feb 2021 00:05:25 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

I decided to attempt building the native-comp feature branch, since it
seems like it may make it to mainline fairly soon.  When bootstrapping
with

  make NATIVE_FULL_AOT=1 -j 32 bootstrap

I get an error compiling gnus/gnus-icalendar.el.  I've put the log
below.  I've updated the emacs information from my running emacs below
to match the version of the repository from which I built.

In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0)
 of 2021-02-13 built on miko
Repository revision: d3a399dd299bf7e811cf42950d5f8ac67f063b36
Repository branch: native-comp
Windowing system distributor 'The X.Org Foundation', version 11.0.12010000
System Description: Debian GNU/Linux bullseye/sid

Configured using:
 'configure --without-toolkit-scroll-bars --with-x-toolkit=lucid --with-nativecomp'

Debugger entered--Lisp error: (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")
  macroexp--fgrep(((--cl-format-header-- #'(lambda (x) (format "%-12s%s" (propertize (concat ... ":") 'face 'bold) (car (cdr x)))))) (args-and-body cl--nmp))
...
  cl--generic-lambda(((event gnus-icalendar-event) &optional reply-status) ("Format an overview of EVENT details." (cl-labels ((format-header (x) (format "%-12s%s" (propertize (concat ... ":") 'face 'bold) (cadr x)))) (with-slots (organizer summary description location recur uid method rsvp participation-type) event (let ((headers `...)) (when (and (not ...) rsvp) (setq headers (append headers ...))) (concat (mapconcat #'format-header headers "\n") "\n\n" description))))))
  #f(compiled-function (arg1 arg2 &rest rest) "Define a new method for generic function NAME.\nThis it defines an implementation of NAME to use for invocations\nof specific types of arguments.\n\nARGS is a list of dispatch arguments (see `cl-defun'), but where\neach variable element is either just a single variable name VAR,\nor a list on the form (VAR TYPE).\n\nFor instance:\n\n  (cl-defmethod foo (bar (format-string string) &optional zot)\n    (format format-string bar))\n\nThe dispatch arguments have to be among the mandatory arguments, and\nall methods of NAME have to use the same set of arguments for dispatch.\nEach dispatch argument and TYPE are specified in ARGS where the corresponding\nformal argument appears as (VAR TYPE) rather than just VAR.\n\nThe optional second argument QUALIFIER is a specifier that\nmodifies how the method is combined with other methods, including:\n   :before  - Method will be called before the primary\n   :after   - Method will be called after the primary\n   :around  - Method will be called around everything else\nThe absence of QUALIFIER means this is a \"primary\" method.\nThe set of acceptable qualifiers and their meaning is defined\n(and can be extended) by the methods of `cl-generic-combine-methods'.\n\nARGS can also include so-called context specializers, introduced by\n`&context' (which should appear right after the mandatory arguments,\nbefore any &optional or &rest).  They have the form (EXPR TYPE) where\nEXPR is an Elisp expression whose value should match TYPE for the\nmethod to be applicable.\n\nThe set of acceptable TYPEs (also called \"specializers\") is defined\n(and can be extended) by the various methods of `cl-generic-generalizers'." #<bytecode 0xd8ef7e2cfe3ee7b>)(gnus-icalendar-event->gnus-calendar ((event gnus-icalendar-event) &optional reply-status) "Format an overview of EVENT details." (cl-labels ((format-header (x) (format "%-12s%s" (propertize (concat (car x) ":") 'face 'bold) (cadr x)))) (with-slots (organizer summary description location recur uid method rsvp participation-type) event (let ((headers `(... ... ... ... ... ...))) (when (and (not (gnus-icalendar-event-reply-p event)) rsvp) (setq headers (append headers `...))) (concat (mapconcat #'format-header headers "\n") "\n\n" description)))))
  byte-compile-toplevel-file-form((cl-defmethod gnus-icalendar-event->gnus-calendar ((event gnus-icalendar-event) &optional reply-status) "Format an overview of EVENT details." (cl-labels ((format-header (x) (format "%-12s%s" (propertize (concat ... ":") 'face 'bold) (cadr x)))) (with-slots (organizer summary description location recur uid method rsvp participation-type) event (let ((headers `...)) (when (and (not ...) rsvp) (setq headers (append headers ...))) (concat (mapconcat #'format-header headers "\n") "\n\n" description))))))
  #<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_43>(#<buffer  *Compiler Input*>)
  byte-compile-from-buffer(#<buffer  *Compiler Input*>)
  byte-compile-file("gnus/gnus-icalendar.el")
  #f(compiled-function (filename) "Byte-compile FILENAME spilling data from the byte compiler." #<bytecode 0x4256aac1328e719>)("gnus/gnus-icalendar.el")
  apply(#f(compiled-function (filename) "Byte-compile FILENAME spilling data from the byte compiler." #<bytecode 0x4256aac1328e719>) "gnus/gnus-icalendar.el" nil)
  comp-spill-lap-function("gnus/gnus-icalendar.el")
  comp-spill-lap("gnus/gnus-icalendar.el")
  comp--native-compile("gnus/gnus-icalendar.el")
  batch-native-compile()
  batch-byte-native-compile-for-bootstrap()
  command-line-1(("--eval" "(setq load-prefer-newer t)" "-l" "comp" "-f" "batch-byte-n ELC+ELN   mail/mail-utils.elc
ative-compile-for-bootstrap" "gnus/gnus-icalendar.el"))
  command-line()
  normal-top-level()

make[3]: *** [Makefile:319: gnus/gnus-icalendar.elc] Error 255
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/home/md5i/src/emacs/native-comp/lisp'
make[2]: *** [Makefile:353: compile-main] Error 2
make[2]: Leaving directory '/home/md5i/src/emacs/native-comp/lisp'
make[1]: *** [Makefile:421: lisp] Error 2
make[1]: Leaving directory '/home/md5i/src/emacs/native-comp'
make: *** [Makefile:1148: bootstrap] Error 2

-- 
Michael Welsh Duggan
([email-masked])