Package: emacs;
Reported by: Spencer Baugh <sbaugh <at> janestreet.com>
Date: Wed, 17 May 2023 17:39:02 UTC
Severity: normal
Found in version 29.0.90
Done: Paul Eggert <eggert <at> cs.ucla.edu>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63556 in the body.
You can then email your comments to 63556 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Wed, 17 May 2023 17:39:02 GMT) Full text and rfc822 format available.Spencer Baugh <sbaugh <at> janestreet.com>
:bug-gnu-emacs <at> gnu.org
.
(Wed, 17 May 2023 17:39:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Spencer Baugh <sbaugh <at> janestreet.com> To: bug-gnu-emacs <at> gnu.org Cc: Paul Eggert <eggert <at> cs.ucla.edu> Subject: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Wed, 17 May 2023 13:38:30 -0400
Commit 0f5b1fcdf0be8c1b3084518f1c4f6f375828094b "Help GCC compute modiff_incr" added usage of _Generic, which breaks the build for me. I think it's because I'm on gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), and _Generic was added in 4.9? If we want to drop support for 4.8 that is fine with me, I just figure this was unintentional. In GNU Emacs 29.0.90 (build 3, x86_64-pc-linux-gnu, X toolkit, cairo version 1.15.12, Xaw scroll bars) of 2023-05-17 built on igm-qws-u22796a Repository revision: 4d08492296c2a6d2910f2b740c2d2508275458fc Repository branch: emacs-29 Windowing system distributor 'The X.Org Foundation', version 11.0.12011000 System Description: CentOS Linux 7 (Core) Configured using: 'configure --with-x-toolkit=lucid --with-gif=ifavailable' Configured features: CAIRO DBUS FREETYPE GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM LUCID ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Compilation Minor modes in effect: jane-fe-minor-mode: t editorconfig-mode: t which-function-mode: t global-git-commit-mode: t magit-auto-revert-mode: t shell-dirtrack-mode: t server-mode: t windmove-mode: t savehist-mode: t save-place-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tab-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/project hides /home/sbaugh/.emacs.d/elpa/project-0.9.8/project /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/xref hides /home/sbaugh/.emacs.d/elpa/xref-1.6.3/xref /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/csharp-mode hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/csharp-mode /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/xref hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/xref /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/project hides /home/sbaugh/src/emacs/emacs-29/lisp/progmodes/project /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/eldoc hides /home/sbaugh/src/emacs/emacs-29/lisp/emacs-lisp/eldoc /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/auctex/lpath hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dictionary/lpath /home/sbaugh/src/emacs/emacs-29/lisp/net/dictionary hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dictionary/dictionary /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/caml-font hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/ocaml/caml-font /home/sbaugh/src/emacs/emacs-29/lisp/org/org-version hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-version /home/sbaugh/src/emacs/emacs-29/lisp/org/org-loaddefs hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-loaddefs /home/sbaugh/src/emacs/emacs-29/lisp/org/org-keys hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-keys /home/sbaugh/src/emacs/emacs-29/lisp/org/ol hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-perl hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-perl /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-core hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-core /home/sbaugh/src/emacs/emacs-29/lisp/org/ox hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-rmail hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-rmail /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-octave hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-octave /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-comint hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-comint /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-w3m hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-w3m /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-org /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-texinfo hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-texinfo /home/sbaugh/src/emacs/emacs-29/lisp/org/org-inlinetask hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-inlinetask /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-mhe hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-mhe /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ocaml hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ocaml /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-clojure hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-clojure /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-publish hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-publish /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-irc hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-irc /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-calc hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-calc /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-odt hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-odt /home/sbaugh/src/emacs/emacs-29/lisp/org/org-id hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-id /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-gnus hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-gnus /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-matlab hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-matlab /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-icalendar hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-icalendar /home/sbaugh/src/emacs/emacs-29/lisp/org/org-footnote hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-footnote /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-bibtex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-bibtex /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lisp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lisp /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-C hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-C /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-org /home/sbaugh/src/emacs/emacs-29/lisp/org/org-indent hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-indent /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-info hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-info /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-maxima hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-maxima /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-awk hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-awk /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-man hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-man /home/sbaugh/src/emacs/emacs-29/lisp/org/org-goto hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-goto /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-md hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-md /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-eshell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-eshell /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lua hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lua /home/sbaugh/src/emacs/emacs-29/lisp/org/org-habit hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-habit /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-R hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-R /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-eww hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-eww /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-makefile hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-makefile /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-latex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-latex /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-docview hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-docview /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lob hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lob /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-beamer hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-beamer /home/sbaugh/src/emacs/emacs-29/lisp/org/org-faces hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-faces /home/sbaugh/src/emacs/emacs-29/lisp/org/ob hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-html hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-html /home/sbaugh/src/emacs/emacs-29/lisp/org/org-feed hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-feed /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-bbdb hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ol-bbdb /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-lilypond hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-lilypond /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-ascii hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ox-ascii /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-latex hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-latex /home/sbaugh/src/emacs/emacs-29/lisp/org/org hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-tangle hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-tangle /home/sbaugh/src/emacs/emacs-29/lisp/org/org-tempo hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-tempo /home/sbaugh/src/emacs/emacs-29/lisp/org/org-duration hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-duration /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sqlite hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sqlite /home/sbaugh/src/emacs/emacs-29/lisp/org/org-entities hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-entities /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-table hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-table /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-js hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-js /home/sbaugh/src/emacs/emacs-29/lisp/org/org-table hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-table /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sql hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sql /home/sbaugh/src/emacs/emacs-29/lisp/org/org-timer hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-timer /home/sbaugh/src/emacs/emacs-29/lisp/org/org-element hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-element /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-java hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-java /home/sbaugh/src/emacs/emacs-29/lisp/org/org-ctags hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-ctags /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-shell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-shell /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-groovy hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-groovy /home/sbaugh/src/emacs/emacs-29/lisp/org/org-src hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-src /home/sbaugh/src/emacs/emacs-29/lisp/org/org-datetree hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-datetree /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-haskell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-haskell /home/sbaugh/src/emacs/emacs-29/lisp/org/org-plot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-plot /home/sbaugh/src/emacs/emacs-29/lisp/org/org-compat hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-compat /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-screen hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-screen /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-fortran hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-fortran /home/sbaugh/src/emacs/emacs-29/lisp/org/org-protocol hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-protocol /home/sbaugh/src/emacs/emacs-29/lisp/org/org-crypt hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-crypt /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sed hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sed /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-gnuplot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-gnuplot /home/sbaugh/src/emacs/emacs-29/lisp/org/org-pcomplete hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-pcomplete /home/sbaugh/src/emacs/emacs-29/lisp/org/org-colview hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-colview /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-scheme hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-scheme /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-forth hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-forth /home/sbaugh/src/emacs/emacs-29/lisp/org/org-num hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-num /home/sbaugh/src/emacs/emacs-29/lisp/org/org-clock hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-clock /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-exp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-exp /home/sbaugh/src/emacs/emacs-29/lisp/org/org-mouse hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-mouse /home/sbaugh/src/emacs/emacs-29/lisp/org/org-capture hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-capture /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-sass hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-sass /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-eval hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-eval /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ref hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ref /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-emacs-lisp hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-emacs-lisp /home/sbaugh/src/emacs/emacs-29/lisp/org/org-mobile hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-mobile /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ruby hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ruby /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-eshell hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-eshell /home/sbaugh/src/emacs/emacs-29/lisp/org/org-lint hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-lint /home/sbaugh/src/emacs/emacs-29/lisp/org/org-agenda hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-agenda /home/sbaugh/src/emacs/emacs-29/lisp/org/org-macro hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-macro /home/sbaugh/src/emacs/emacs-29/lisp/org/org-attach-git hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-attach-git /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-processing hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-processing /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-css hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-css /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-dot hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-dot /home/sbaugh/src/emacs/emacs-29/lisp/org/org-list hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-list /home/sbaugh/src/emacs/emacs-29/lisp/org/org-macs hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-macs /home/sbaugh/src/emacs/emacs-29/lisp/org/org-attach hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-attach /home/sbaugh/src/emacs/emacs-29/lisp/org/org-archive hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/org-archive /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-python hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-python /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-plantuml hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-plantuml /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-ditaa hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/lisp/ob-ditaa /home/sbaugh/src/emacs/emacs-29/lisp/org/ob-julia hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ob-julia /home/sbaugh/src/emacs/emacs-29/lisp/org/ol-man hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ol-man /home/sbaugh/src/emacs/emacs-29/lisp/org/ox-koma-letter hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/org/contrib/lisp/ox-koma-letter /home/sbaugh/.emacs.d/elpa/dash-2.19.1/dash hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dash/dash /home/sbaugh/.emacs.d/elpa/dash-2.19.1/dash-functional hides /usr/local/home/sbaugh/workspaces/fe-47828/+share+/app/emacs/elisp/contrib/dash/dash-functional Features: (shadow emacsbug grep sh-script treesit executable misearch multi-isearch cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs goto-addr texinfo texinfo-loaddefs magit-imenu git-rebase face-remap bug-reference vc-git vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view vc-fe qp sort smiley gnus-cite mail-extr textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check gnus-async gnus-bcklg gnus-ml disp-table nndoc gnus-dup display-line-numbers mm-archive url-http-ntlm ntlm hmac-md5 hex-util md4 url-cache debbugs-gnu debbugs-compat debbugs soap-client url-http url-gw rng-xsd rng-dt rng-util xsd-regexp network-stream nsm gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig nntp gnus-cache gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader range cus-edit cus-load wid-edit vc-hg vc-dir vc vc-dispatcher tramp tramp-loaddefs trampver tramp-integration tramp-compat parse-time iso8601 ls-lisp ffap jane-merlin merlin-imenu merlin-xref merlin-cap merlin jane-async-merlin jane-completion jane-common jane-project xref jane-fe-menu ecaml_plugin linum view gopcaml magit-bookmark bookmark image+ advice image-file image-converter editorconfig editorconfig-core editorconfig-core-handle editorconfig-fnmatch whitespace jane-auto-modes vba-mode markdown-mode color jane jane-micro-features jane-diff unified-test-mode shell-file core core-buffer core-error core-util ert pp ewoc debug backtrace jane-sexp jane-ocaml jane-tuareg-theme tuareg tuareg-compat tuareg-opam skeleton flymake-proc flymake warnings thingatpt smie caml-types caml-help caml-emacs find-file compile jane-cr jane-align jane-deprecated jane-smerge gnu-elpa-keyring-update jane-ocp-indent ocp-indent cl jane-util page-ext dired-x magit-extras project magit-submodule magit-obsolete magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log which-func imenu magit-diff smerge-mode diff diff-mode git-commit log-edit message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa epg rfc6068 epg-config gnus-util text-property-search mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process with-editor shell server magit-mode transient edmacro kmacro magit-git magit-section magit-utils crm dash cl-extra help-mode windmove org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete pcomplete org-list org-footnote org-faces org-entities time-date noutline outline icons ob-emacs-lisp ob-core ob-eval org-cycle org-table ol rx org-fold org-fold-core org-keys oc org-loaddefs find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs format-spec gdb-mi bindat gud comint easy-mmode files-x derived ansi-osc ansi-color ring vundo pcase cyberpunk-theme savehist saveplace project-autoloads vundo-autoloads magit-autoloads xref-autoloads csv-mode-autoloads magit-section-autoloads cyberpunk-theme-autoloads url-http-ntlm-autoloads url-auth git-commit-autoloads with-editor-autoloads finder-inf info dash-autoloads vc-hgcmd-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 url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv 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 theme-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 dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo x-toolkit xinput2 x multi-tty make-network-process emacs) Memory information: ((conses 16 777364 43859) (symbols 48 47737 56) (strings 32 171876 9815) (string-bytes 1 5612215) (vectors 16 95026) (vector-slots 8 1172146 106982) (floats 8 569 272) (intervals 56 7572 0) (buffers 976 41) (heap 1024 68944 7941))
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Wed, 17 May 2023 17:46:01 GMT) Full text and rfc822 format available.Message #8 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Spencer Baugh <sbaugh <at> janestreet.com> Cc: eggert <at> cs.ucla.edu, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Wed, 17 May 2023 20:45:57 +0300
> Cc: Paul Eggert <eggert <at> cs.ucla.edu> > From: Spencer Baugh <sbaugh <at> janestreet.com> > Date: Wed, 17 May 2023 13:38:30 -0400 > > > Commit 0f5b1fcdf0be8c1b3084518f1c4f6f375828094b "Help GCC compute > modiff_incr" added usage of _Generic, which breaks the build for me. I > think it's because I'm on gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), > and _Generic was added in 4.9? > > If we want to drop support for 4.8 that is fine with me, I just figure > this was unintentional. I don't think we want to drop support for GCC 4.8, no.
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Wed, 17 May 2023 17:58:02 GMT) Full text and rfc822 format available.Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Spencer Baugh <sbaugh <at> janestreet.com> Cc: Emacs bug reports and feature requests <bug-gnu-emacs <at> gnu.org> Subject: Re: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Wed, 17 May 2023 10:57:38 -0700
[Message part 1 (text/plain, inline)]
On 2023-05-17 10:38, Spencer Baugh wrote: > I think it's because I'm on gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), > and _Generic was added in 4.9? Thanks for reporting the problem. Since _Generic is used here merely as a micro-optimization on 32-bit platforms, it's not worth whatever porting hassle you've run into, so I installed the attached patch so that modiff no longer uses _Generic.
[0001-Port-modiff-changes-to-GCC-4.8.5.patch (text/x-patch, attachment)]
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Thu, 18 May 2023 11:12:02 GMT) Full text and rfc822 format available.Message #14 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 19:11:07 +0800
Paul Eggert <eggert <at> cs.ucla.edu> writes: > Thanks for reporting the problem. Since _Generic is used here merely > as a micro-optimization on 32-bit platforms, it's not worth whatever > porting hassle you've run into, so I installed the attached patch so > that modiff no longer uses _Generic. Would anyone mind if I made configure check for that? Btw, couldn't the macro be defined to something along the lines of this when the compiler only supports C99? #define foo(expression) \ (sizeof (expression) == sizeof (signed char) \ ? code_for_signed_char \ : (sizeof (expression) == sizeof (short int) \ ? code_for_short_int \ : (sizeof (expression) == sizeof (int) \ ? code_for_int \ ... and so on
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Thu, 18 May 2023 11:43:01 GMT) Full text and rfc822 format available.Message #17 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: sbaugh <at> janestreet.com, eggert <at> cs.ucla.edu, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 14:42:27 +0300
> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org > Date: Thu, 18 May 2023 19:11:07 +0800 > From: Po Lu via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > Paul Eggert <eggert <at> cs.ucla.edu> writes: > > > Thanks for reporting the problem. Since _Generic is used here merely > > as a micro-optimization on 32-bit platforms, it's not worth whatever > > porting hassle you've run into, so I installed the attached patch so > > that modiff no longer uses _Generic. > > Would anyone mind if I made configure check for that? Depends on how complex is that, and what problem does it solve. > Btw, couldn't the macro be defined to something along the lines of this > when the compiler only supports C99? > > #define foo(expression) \ > (sizeof (expression) == sizeof (signed char) \ > ? code_for_signed_char \ > : (sizeof (expression) == sizeof (short int) \ > ? code_for_short_int \ > : (sizeof (expression) == sizeof (int) \ > ? code_for_int \ > ... and so on AFAIR, sizeof is a compile-time expression, the preprocessor cannot evaluate it.
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Thu, 18 May 2023 13:23:01 GMT) Full text and rfc822 format available.Message #20 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: sbaugh <at> janestreet.com, eggert <at> cs.ucla.edu, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 21:21:51 +0800
Eli Zaretskii <eliz <at> gnu.org> writes: > Depends on how complex is that, and what problem does it solve. The problem of using `long long' on systems with less than 64 significant bits in their words. I don't think that's a particularly good idea -- once such uses pile up, Emacs will gradually become slower and slower on such systems. >> Btw, couldn't the macro be defined to something along the lines of this >> when the compiler only supports C99? >> >> #define foo(expression) \ >> (sizeof (expression) == sizeof (signed char) \ >> ? code_for_signed_char \ >> : (sizeof (expression) == sizeof (short int) \ >> ? code_for_short_int \ >> : (sizeof (expression) == sizeof (int) \ >> ? code_for_int \ >> ... and so on > > AFAIR, sizeof is a compile-time expression, the preprocessor cannot > evaluate it. It doesn't have to be evaluated by the preprocessor (and nor is _Generic.) It just needs to expand to an expression that does the right thing.
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Thu, 18 May 2023 14:13:02 GMT) Full text and rfc822 format available.Message #23 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Po Lu <luangruo <at> yahoo.com> Cc: sbaugh <at> janestreet.com, eggert <at> cs.ucla.edu, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 17:12:27 +0300
> From: Po Lu <luangruo <at> yahoo.com> > Cc: eggert <at> cs.ucla.edu, sbaugh <at> janestreet.com, 63556 <at> debbugs.gnu.org > Date: Thu, 18 May 2023 21:21:51 +0800 > > Eli Zaretskii <eliz <at> gnu.org> writes: > > > Depends on how complex is that, and what problem does it solve. > > The problem of using `long long' on systems with less than 64 > significant bits in their words. I don't think that's a particularly > good idea -- once such uses pile up, Emacs will gradually become slower > and slower on such systems. What does this have to do with _Generic? > >> #define foo(expression) \ > >> (sizeof (expression) == sizeof (signed char) \ > >> ? code_for_signed_char \ > >> : (sizeof (expression) == sizeof (short int) \ > >> ? code_for_short_int \ > >> : (sizeof (expression) == sizeof (int) \ > >> ? code_for_int \ > >> ... and so on > > > > AFAIR, sizeof is a compile-time expression, the preprocessor cannot > > evaluate it. > > It doesn't have to be evaluated by the preprocessor (and nor is > _Generic.) It just needs to expand to an expression that does the right > thing. And what is "the right thing" in this case? I guess I don't understand what this has to do with _Generic.
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Thu, 18 May 2023 14:41:01 GMT) Full text and rfc822 format available.Message #26 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Po Lu <luangruo <at> yahoo.com> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 07:40:47 -0700
On 5/18/23 04:11, Po Lu wrote: > Would anyone mind if I made configure check for that? There would be problems in doing that. GCC and Clang both have problems with _Generic (suggested by this original bug report), and some of them have to do with which warnings you've enabled. The configure-time check would run without the warnings whereas the build would run with them. This is partly why intprops-internal.h has given up on _Generic with GCC and Clang; see its ifdefs. I assumed that these problems didn't apply to their simple use in elogb, but apparently I assumed incorrectly. > Btw, couldn't the macro be defined to something along the lines of this > when the compiler only supports C99? > > #define foo(expression) \ > (sizeof (expression) == sizeof (signed char) \ That wouldn't work on unusual platforms that have padding bits. Of course we could simply refuse to port to targets like that; still, I'd be reluctant to do that just for this little issue. > The problem of using `long long' on systems with less than 64 > significant bits in their words. I don't think that's a particularly > good idea -- once such uses pile up, Emacs will gradually become slower > and slower on such systems. I couldn't measure the slowdown in this case. Until it's measurable I wouldn't worry about it. To some extent I put in that _Generic originally more as documentation than as an actual attempt to speed things up.
Paul Eggert <eggert <at> cs.ucla.edu>
:Spencer Baugh <sbaugh <at> janestreet.com>
:Message #31 received at 63556-done <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Spencer Baugh <sbaugh <at> janestreet.com> Cc: 63556-done <at> debbugs.gnu.org Subject: Re: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 13:32:50 -0700
Oh, I see I forgot to mark bug#63556 as fixed. Doing that now. For the record, the fix is here: https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=0bba1b8c3df8b7b53e08fd69dcc832d253e7a2d1
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Fri, 19 May 2023 00:47:01 GMT) Full text and rfc822 format available.Message #34 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Fri, 19 May 2023 08:46:02 +0800
Paul Eggert <eggert <at> cs.ucla.edu> writes: > There would be problems in doing that. GCC and Clang both have > problems with _Generic (suggested by this original bug report), and > some of them have to do with which warnings you've enabled. The > configure-time check would run without the warnings whereas the build > would run with them. > > This is partly why intprops-internal.h has given up on _Generic with > GCC and Clang; see its ifdefs. I assumed that these problems didn't > apply to their simple use in elogb, but apparently I assumed > incorrectly. [...] >> Btw, couldn't the macro be defined to something along the lines of this >> when the compiler only supports C99? >> #define foo(expression) \ >> (sizeof (expression) == sizeof (signed char) \ > > That wouldn't work on unusual platforms that have padding bits. Of > course we could simply refuse to port to targets like that; still, I'd > be reluctant to do that just for this little issue. How does intprops.h work on such systems? > I couldn't measure the slowdown in this case. Until it's measurable I > wouldn't worry about it. To some extent I put in that _Generic > originally more as documentation than as an actual attempt to speed > things up. OK, but that's the second use of `long long' in src/ outside of NT-specific files. I can't help but be a little skittish.
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Fri, 19 May 2023 03:07:01 GMT) Full text and rfc822 format available.Message #37 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Paul Eggert <eggert <at> cs.ucla.edu> To: Po Lu <luangruo <at> yahoo.com> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Thu, 18 May 2023 20:05:59 -0700
On 5/18/23 17:46, Po Lu wrote: > How does intprops.h work on such systems? It relies on _Generic. (Those systems use neither GCC nor Clang.) > OK, but that's the second use of `long long' in src/ outside of > NT-specific files. I can't help but be a little skittish. Fair enough, although I see more than just one other use: EMACS_INT (32-bit platforms configured --with-wide-int), color_distance, time_from_jiffies (in Linux), system_process_attributes (in Linux). Currently there's a 'verify (PTRDIFF_MAX <= ULLONG_MAX);' protecting the use of elogb in lisp.h. Would it help to add a 'verify (max (-MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM) <= ULLONG_MAX);' to protect its use in floatfns.c?
bug-gnu-emacs <at> gnu.org
:bug#63556
; Package emacs
.
(Fri, 19 May 2023 03:19:01 GMT) Full text and rfc822 format available.Message #40 received at 63556 <at> debbugs.gnu.org (full text, mbox):
From: Po Lu <luangruo <at> yahoo.com> To: Paul Eggert <eggert <at> cs.ucla.edu> Cc: Spencer Baugh <sbaugh <at> janestreet.com>, 63556 <at> debbugs.gnu.org Subject: Re: bug#63556: 29.0.90; Use of _Generic breaks Emacs build on GCC <4.9 Date: Fri, 19 May 2023 11:18:28 +0800
Paul Eggert <eggert <at> cs.ucla.edu> writes: > On 5/18/23 17:46, Po Lu wrote: > >> How does intprops.h work on such systems? > > It relies on _Generic. (Those systems use neither GCC nor Clang.) What about in C99 hosts? > Fair enough, although I see more than just one other use: EMACS_INT > (32-bit platforms configured --with-wide-int), color_distance, `color_distance' is the first use I was referring to. And, so far, `--with-wide-int' is optional. > time_from_jiffies (in Linux), system_process_attributes (in Linux). These seem to be system-specific. > Currently there's a 'verify (PTRDIFF_MAX <= ULLONG_MAX);' protecting > the use of elogb in lisp.h. Would it help to add a 'verify (max > (-MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM) <= ULLONG_MAX);' to > protect its use in floatfns.c? Sure. But it would make me feel a lot better if we could get away without using `long long' at all on 32-bit systems.
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Fri, 16 Jun 2023 11:24:08 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.