Package: emacs;
Reported by: dick <dick.r.chiang <at> gmail.com>
Date: Sat, 12 Jun 2021 23:01:02 UTC
Severity: normal
Found in version 28.0.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
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 48990 in the body.
You can then email your comments to 48990 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#48990
; Package emacs
.
(Sat, 12 Jun 2021 23:01:02 GMT) Full text and rfc822 format available.dick <dick.r.chiang <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Sat, 12 Jun 2021 23:01:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: dick <dick.r.chiang <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 28.0.50; buffer-local and threads malarkey Date: Sat, 12 Jun 2021 19:00:27 -0400
[Message part 1 (text/plain, inline)]
Seems to be a problem going back to emacs-26.3 # all good src/emacs -Q --batch -l ./usurped.el # buffer-local causes let-bound variable to freak out src/emacs -Q --batch --eval "(setq confuse-thread t)" -l ./usurped.el # buffer-local causes basic setq to freak out src/emacs -Q --batch --eval "(setq confuse-main t)" -l ./usurped.el
[usurped.el (application/emacs-lisp, attachment)]
[Message part 3 (text/plain, inline)]
In GNU Emacs 28.0.50 (build 69, x86_64-pc-linux-gnu, GTK+ Version 3.22.30, cairo version 1.15.10) of 2021-06-12 built on dick Repository revision: 4c6554413d318069239ba83f4f42fa2452801d30 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.11906000 System Description: Ubuntu 18.04.4 LTS Configured using: 'configure --prefix=/home/dick/.local --with-rsvg=yes --with-xml2=yes --enable-profiling 'CFLAGS=-g3 -Og' CPPFLAGS=-DDEBUG_TRACE_MOVE' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: paredit-mode: t show-paren-mode: t projectile-mode: t flx-ido-mode: t override-global-mode: t shell-dirtrack-mode: t beacon-mode: t global-hl-line-mode: t winner-mode: t tooltip-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: /home/dick/ESS/lisp/obsolete/ess-swv hides /home/dick/ESS/lisp/ess-swv /home/dick/ESS/lisp/obsolete/ess-rutils hides /home/dick/ESS/lisp/ess-rutils /home/dick/ESS/lisp/obsolete/ess-noweb hides /home/dick/ESS/lisp/ess-noweb /home/dick/ESS/lisp/obsolete/mouseme hides /home/dick/ESS/lisp/mouseme /home/dick/ESS/lisp/obsolete/ess-mouse hides /home/dick/ESS/lisp/ess-mouse /home/dick/ESS/lisp/obsolete/ess-noweb-mode hides /home/dick/ESS/lisp/ess-noweb-mode /home/dick/ESS/lisp/obsolete/make-regexp hides /home/dick/ESS/lisp/make-regexp /home/dick/ESS/lisp/obsolete/ess-r-a hides /home/dick/ESS/lisp/ess-r-a /home/dick/ESS/lisp/obsolete/ess-noweb-font-lock-mode hides /home/dick/ESS/lisp/ess-noweb-font-lock-mode /home/dick/gomacro-mode/gomacro-mode hides /home/dick/.emacs.d/elpa/gomacro-mode-20200326.1103/gomacro-mode /home/dick/ESS/lisp/julia-mode hides /home/dick/.emacs.d/elpa/julia-mode-20200717.1915/julia-mode /home/dick/ESS/lisp/julia-mode-latexsubs hides /home/dick/.emacs.d/elpa/julia-mode-20200717.1915/julia-mode-latexsubs /home/dick/.emacs.d/elpa/hydra-20170924.2259/lv hides /home/dick/.emacs.d/elpa/lv-20191106.1238/lv /home/dick/org-gcal.el/org-gcal hides /home/dick/.emacs.d/elpa/org-gcal-0.3/org-gcal /home/dick/.emacs.d/elpa/async-20200113.1745/async-autoloads hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-autoloads /home/dick/.emacs.d/elpa/async-20200113.1745/async-bytecomp hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-bytecomp /home/dick/.emacs.d/elpa/async-20200113.1745/smtpmail-async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/smtpmail-async /home/dick/.emacs.d/elpa/async-20200113.1745/dired-async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/dired-async /home/dick/.emacs.d/elpa/async-20200113.1745/async hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async /home/dick/.emacs.d/elpa/async-20200113.1745/async-pkg hides /home/dick/.local/share/emacs/site-lisp/emacs-async/async-pkg /home/dick/.emacs.d/lisp/json hides /home/dick/emacs/lisp/json /home/dick/.emacs.d/elpa/transient-20210221.2251/transient hides /home/dick/emacs/lisp/transient /home/dick/.emacs.d/elpa/org-9.4.5/ob-css hides /home/dick/emacs/lisp/org/ob-css /home/dick/.emacs.d/elpa/org-9.4.5/ox-texinfo hides /home/dick/emacs/lisp/org/ox-texinfo /home/dick/.emacs.d/elpa/org-9.4.5/org-plot hides /home/dick/emacs/lisp/org/org-plot /home/dick/.emacs.d/elpa/org-9.4.5/ob-eval hides /home/dick/emacs/lisp/org/ob-eval /home/dick/.emacs.d/elpa/org-9.4.5/ob-ref hides /home/dick/emacs/lisp/org/ob-ref /home/dick/.emacs.d/elpa/org-9.4.5/org-crypt hides /home/dick/emacs/lisp/org/org-crypt /home/dick/.emacs.d/elpa/org-9.4.5/ob-tangle hides /home/dick/emacs/lisp/org/ob-tangle /home/dick/.emacs.d/elpa/org-9.4.5/ob-asymptote hides /home/dick/emacs/lisp/org/ob-asymptote /home/dick/.emacs.d/elpa/org-9.4.5/ol-w3m hides /home/dick/emacs/lisp/org/ol-w3m /home/dick/.emacs.d/elpa/org-9.4.5/ob-hledger hides /home/dick/emacs/lisp/org/ob-hledger /home/dick/.emacs.d/elpa/org-9.4.5/ob-forth hides /home/dick/emacs/lisp/org/ob-forth /home/dick/.emacs.d/elpa/org-9.4.5/org-mouse hides /home/dick/emacs/lisp/org/org-mouse /home/dick/.emacs.d/elpa/org-9.4.5/org-indent hides /home/dick/emacs/lisp/org/org-indent /home/dick/.emacs.d/elpa/org-9.4.5/org-attach-git hides /home/dick/emacs/lisp/org/org-attach-git /home/dick/.emacs.d/elpa/org-9.4.5/org-element hides /home/dick/emacs/lisp/org/org-element /home/dick/.emacs.d/elpa/org-9.4.5/ol-mhe hides /home/dick/emacs/lisp/org/ol-mhe /home/dick/.emacs.d/elpa/org-9.4.5/org-footnote hides /home/dick/emacs/lisp/org/org-footnote /home/dick/.emacs.d/elpa/org-9.4.5/ob-stan hides /home/dick/emacs/lisp/org/ob-stan /home/dick/.emacs.d/elpa/org-9.4.5/ob-perl hides /home/dick/emacs/lisp/org/ob-perl /home/dick/.emacs.d/elpa/org-9.4.5/org-timer hides /home/dick/emacs/lisp/org/org-timer /home/dick/.emacs.d/elpa/org-9.4.5/org-table hides /home/dick/emacs/lisp/org/org-table /home/dick/.emacs.d/elpa/org-9.4.5/org-keys hides /home/dick/emacs/lisp/org/org-keys /home/dick/.emacs.d/elpa/org-9.4.5/org-colview hides /home/dick/emacs/lisp/org/org-colview /home/dick/.emacs.d/elpa/org-9.4.5/ol hides /home/dick/emacs/lisp/org/ol /home/dick/.emacs.d/elpa/org-9.4.5/org-entities hides /home/dick/emacs/lisp/org/org-entities /home/dick/.emacs.d/elpa/org-9.4.5/org-src hides /home/dick/emacs/lisp/org/org-src /home/dick/.emacs.d/elpa/org-9.4.5/ob-js hides /home/dick/emacs/lisp/org/ob-js /home/dick/.emacs.d/elpa/org-9.4.5/org hides /home/dick/emacs/lisp/org/org /home/dick/.emacs.d/elpa/org-9.4.5/ob-makefile hides /home/dick/emacs/lisp/org/ob-makefile /home/dick/.emacs.d/elpa/org-9.4.5/ob-io hides /home/dick/emacs/lisp/org/ob-io /home/dick/.emacs.d/elpa/org-9.4.5/org-refile hides /home/dick/emacs/lisp/org/org-refile /home/dick/.emacs.d/elpa/org-9.4.5/org-clock hides /home/dick/emacs/lisp/org/org-clock /home/dick/.emacs.d/elpa/org-9.4.5/ob-dot hides /home/dick/emacs/lisp/org/ob-dot /home/dick/.emacs.d/elpa/org-9.4.5/ob-exp hides /home/dick/emacs/lisp/org/ob-exp /home/dick/.emacs.d/elpa/org-9.4.5/org-compat hides /home/dick/emacs/lisp/org/org-compat /home/dick/.emacs.d/elpa/org-9.4.5/ob-maxima hides /home/dick/emacs/lisp/org/ob-maxima /home/dick/.emacs.d/elpa/org-9.4.5/ob-C hides /home/dick/emacs/lisp/org/ob-C /home/dick/.emacs.d/elpa/org-9.4.5/org-tempo hides /home/dick/emacs/lisp/org/org-tempo /home/dick/.emacs.d/elpa/org-9.4.5/ox-md hides /home/dick/emacs/lisp/org/ox-md /home/dick/.emacs.d/elpa/org-9.4.5/ob-screen hides /home/dick/emacs/lisp/org/ob-screen /home/dick/.emacs.d/elpa/org-9.4.5/ob-lua hides /home/dick/emacs/lisp/org/ob-lua /home/dick/.emacs.d/elpa/org-9.4.5/ob-matlab hides /home/dick/emacs/lisp/org/ob-matlab /home/dick/.emacs.d/elpa/org-9.4.5/ob-groovy hides /home/dick/emacs/lisp/org/ob-groovy /home/dick/.emacs.d/elpa/org-9.4.5/ol-docview hides /home/dick/emacs/lisp/org/ol-docview /home/dick/.emacs.d/elpa/org-9.4.5/ob-ebnf hides /home/dick/emacs/lisp/org/ob-ebnf /home/dick/.emacs.d/elpa/org-9.4.5/ob-sed hides /home/dick/emacs/lisp/org/ob-sed /home/dick/.emacs.d/elpa/org-9.4.5/ox-html hides /home/dick/emacs/lisp/org/ox-html /home/dick/.emacs.d/elpa/org-9.4.5/ob-emacs-lisp hides /home/dick/emacs/lisp/org/ob-emacs-lisp /home/dick/.emacs.d/elpa/org-9.4.5/ol-bbdb hides /home/dick/emacs/lisp/org/ol-bbdb /home/dick/.emacs.d/elpa/org-9.4.5/org-macs hides /home/dick/emacs/lisp/org/org-macs /home/dick/.emacs.d/elpa/org-9.4.5/org-lint hides /home/dick/emacs/lisp/org/org-lint /home/dick/.emacs.d/elpa/org-9.4.5/org-loaddefs hides /home/dick/emacs/lisp/org/org-loaddefs /home/dick/.emacs.d/elpa/org-9.4.5/ob-scheme hides /home/dick/emacs/lisp/org/ob-scheme /home/dick/.emacs.d/elpa/org-9.4.5/org-protocol hides /home/dick/emacs/lisp/org/org-protocol /home/dick/.emacs.d/elpa/org-9.4.5/ol-eww hides /home/dick/emacs/lisp/org/ol-eww /home/dick/.emacs.d/elpa/org-9.4.5/ox-beamer hides /home/dick/emacs/lisp/org/ox-beamer /home/dick/.emacs.d/elpa/org-9.4.5/ob-core hides /home/dick/emacs/lisp/org/ob-core /home/dick/.emacs.d/elpa/org-9.4.5/org-agenda hides /home/dick/emacs/lisp/org/org-agenda /home/dick/.emacs.d/elpa/org-9.4.5/ob-plantuml hides /home/dick/emacs/lisp/org/ob-plantuml /home/dick/.emacs.d/elpa/org-9.4.5/ox-publish hides /home/dick/emacs/lisp/org/ox-publish /home/dick/.emacs.d/elpa/org-9.4.5/ol-eshell hides /home/dick/emacs/lisp/org/ol-eshell /home/dick/.emacs.d/elpa/org-9.4.5/ol-rmail hides /home/dick/emacs/lisp/org/ol-rmail /home/dick/.emacs.d/elpa/org-9.4.5/ob-J hides /home/dick/emacs/lisp/org/ob-J /home/dick/.emacs.d/elpa/org-9.4.5/ob-abc hides /home/dick/emacs/lisp/org/ob-abc /home/dick/.emacs.d/elpa/org-9.4.5/ob-awk hides /home/dick/emacs/lisp/org/ob-awk /home/dick/.emacs.d/elpa/org-9.4.5/ob-gnuplot hides /home/dick/emacs/lisp/org/ob-gnuplot /home/dick/.emacs.d/elpa/org-9.4.5/ob-sql hides /home/dick/emacs/lisp/org/ob-sql /home/dick/.emacs.d/elpa/org-9.4.5/ob-python hides /home/dick/emacs/lisp/org/ob-python /home/dick/.emacs.d/elpa/org-9.4.5/ob-octave hides /home/dick/emacs/lisp/org/ob-octave /home/dick/.emacs.d/elpa/org-9.4.5/ox-man hides /home/dick/emacs/lisp/org/ox-man /home/dick/.emacs.d/elpa/org-9.4.5/ol-bibtex hides /home/dick/emacs/lisp/org/ol-bibtex /home/dick/.emacs.d/elpa/org-9.4.5/org-goto hides /home/dick/emacs/lisp/org/org-goto /home/dick/.emacs.d/elpa/org-9.4.5/ob-org hides /home/dick/emacs/lisp/org/ob-org /home/dick/.emacs.d/elpa/org-9.4.5/ob-lob hides /home/dick/emacs/lisp/org/ob-lob /home/dick/.emacs.d/elpa/org-9.4.5/ob-calc hides /home/dick/emacs/lisp/org/ob-calc /home/dick/.emacs.d/elpa/org-9.4.5/org-macro hides /home/dick/emacs/lisp/org/org-macro /home/dick/.emacs.d/elpa/org-9.4.5/ob hides /home/dick/emacs/lisp/org/ob /home/dick/.emacs.d/elpa/org-9.4.5/ol-info hides /home/dick/emacs/lisp/org/ol-info /home/dick/.emacs.d/elpa/org-9.4.5/ox-ascii hides /home/dick/emacs/lisp/org/ox-ascii /home/dick/.emacs.d/elpa/org-9.4.5/ob-clojure hides /home/dick/emacs/lisp/org/ob-clojure /home/dick/.emacs.d/elpa/org-9.4.5/org-inlinetask hides /home/dick/emacs/lisp/org/org-inlinetask /home/dick/.emacs.d/elpa/org-9.4.5/ob-vala hides /home/dick/emacs/lisp/org/ob-vala /home/dick/.emacs.d/elpa/org-9.4.5/ob-ruby hides /home/dick/emacs/lisp/org/ob-ruby /home/dick/.emacs.d/elpa/org-9.4.5/ob-sass hides /home/dick/emacs/lisp/org/ob-sass /home/dick/.emacs.d/elpa/org-9.4.5/org-faces hides /home/dick/emacs/lisp/org/org-faces /home/dick/.emacs.d/elpa/org-9.4.5/org-attach hides /home/dick/emacs/lisp/org/org-attach /home/dick/.emacs.d/elpa/org-9.4.5/ob-lilypond hides /home/dick/emacs/lisp/org/ob-lilypond /home/dick/.emacs.d/elpa/org-9.4.5/org-archive hides /home/dick/emacs/lisp/org/org-archive /home/dick/.emacs.d/elpa/org-9.4.5/ob-shen hides /home/dick/emacs/lisp/org/ob-shen /home/dick/.emacs.d/elpa/org-9.4.5/org-datetree hides /home/dick/emacs/lisp/org/org-datetree /home/dick/.emacs.d/elpa/org-9.4.5/org-id hides /home/dick/emacs/lisp/org/org-id /home/dick/.emacs.d/elpa/org-9.4.5/ob-eshell hides /home/dick/emacs/lisp/org/ob-eshell /home/dick/.emacs.d/elpa/org-9.4.5/ob-sqlite hides /home/dick/emacs/lisp/org/ob-sqlite /home/dick/.emacs.d/elpa/org-9.4.5/ob-picolisp hides /home/dick/emacs/lisp/org/ob-picolisp /home/dick/.emacs.d/elpa/org-9.4.5/org-habit hides /home/dick/emacs/lisp/org/org-habit /home/dick/.emacs.d/elpa/org-9.4.5/org-ctags hides /home/dick/emacs/lisp/org/org-ctags /home/dick/.emacs.d/elpa/org-9.4.5/ol-gnus hides /home/dick/emacs/lisp/org/ol-gnus /home/dick/.emacs.d/elpa/org-9.4.5/ob-java hides /home/dick/emacs/lisp/org/ob-java /home/dick/.emacs.d/elpa/org-9.4.5/ox-latex hides /home/dick/emacs/lisp/org/ox-latex /home/dick/.emacs.d/elpa/org-9.4.5/org-pcomplete hides /home/dick/emacs/lisp/org/org-pcomplete /home/dick/.emacs.d/elpa/org-9.4.5/ob-processing hides /home/dick/emacs/lisp/org/ob-processing /home/dick/.emacs.d/elpa/org-9.4.5/ox-odt hides /home/dick/emacs/lisp/org/ox-odt /home/dick/.emacs.d/elpa/org-9.4.5/org-feed hides /home/dick/emacs/lisp/org/org-feed /home/dick/.emacs.d/elpa/org-9.4.5/ob-ditaa hides /home/dick/emacs/lisp/org/ob-ditaa /home/dick/.emacs.d/elpa/org-9.4.5/ox-org hides /home/dick/emacs/lisp/org/ox-org /home/dick/.emacs.d/elpa/org-9.4.5/ob-coq hides /home/dick/emacs/lisp/org/ob-coq /home/dick/.emacs.d/elpa/org-9.4.5/ob-R hides /home/dick/emacs/lisp/org/ob-R /home/dick/.emacs.d/elpa/org-9.4.5/ob-fortran hides /home/dick/emacs/lisp/org/ob-fortran /home/dick/.emacs.d/elpa/org-9.4.5/ob-haskell hides /home/dick/emacs/lisp/org/ob-haskell /home/dick/.emacs.d/elpa/org-9.4.5/ox-icalendar hides /home/dick/emacs/lisp/org/ox-icalendar /home/dick/.emacs.d/elpa/org-9.4.5/org-num hides /home/dick/emacs/lisp/org/org-num /home/dick/.emacs.d/elpa/org-9.4.5/ob-ledger hides /home/dick/emacs/lisp/org/ob-ledger /home/dick/.emacs.d/elpa/org-9.4.5/ox hides /home/dick/emacs/lisp/org/ox /home/dick/.emacs.d/elpa/org-9.4.5/org-mobile hides /home/dick/emacs/lisp/org/org-mobile /home/dick/.emacs.d/elpa/org-9.4.5/org-duration hides /home/dick/emacs/lisp/org/org-duration /home/dick/.emacs.d/elpa/org-9.4.5/org-list hides /home/dick/emacs/lisp/org/org-list /home/dick/.emacs.d/elpa/org-9.4.5/ob-latex hides /home/dick/emacs/lisp/org/ob-latex /home/dick/.emacs.d/elpa/org-9.4.5/ob-ocaml hides /home/dick/emacs/lisp/org/ob-ocaml /home/dick/.emacs.d/elpa/org-9.4.5/ob-lisp hides /home/dick/emacs/lisp/org/ob-lisp /home/dick/.emacs.d/elpa/org-9.4.5/ob-mscgen hides /home/dick/emacs/lisp/org/ob-mscgen /home/dick/.emacs.d/elpa/org-9.4.5/ob-comint hides /home/dick/emacs/lisp/org/ob-comint /home/dick/.emacs.d/elpa/org-9.4.5/org-capture hides /home/dick/emacs/lisp/org/org-capture /home/dick/.emacs.d/elpa/org-9.4.5/ob-table hides /home/dick/emacs/lisp/org/ob-table /home/dick/.emacs.d/elpa/org-9.4.5/ob-shell hides /home/dick/emacs/lisp/org/ob-shell /home/dick/.emacs.d/elpa/org-9.4.5/ol-irc hides /home/dick/emacs/lisp/org/ol-irc /home/dick/.emacs.d/elpa/org-9.4.5/org-version hides /home/dick/emacs/lisp/org/org-version /home/dick/.emacs.d/elpa/hierarchy-20171221.1151/hierarchy hides /home/dick/emacs/lisp/emacs-lisp/hierarchy Features: (shadow sort flyspell ispell footnote mail-extr gnus-msg emacsbug paredit-ext paredit mu4e mu4e-org mu4e-main mu4e-view mu4e-view-gnus gnus-art mm-uu mml2015 mm-view mml-smime smime dig mu4e-view-common mu4e-headers mu4e-compose mu4e-context mu4e-draft mu4e-actions rfc2368 smtpmail sendmail mu4e-mark mu4e-proc mu4e-utils doc-view jka-compr image-mode exif mu4e-lists mu4e-message flow-fill org-tempo tempo org org-macro org-footnote org-pcomplete org-list org-faces org-entities org-version ob-R ob-emacs-lisp ob-ein ein-cell ein-output-area ein-kernel ein-ipdb ein-query ein-events ein-websocket websocket bindat ein-node ewoc ein-log ein-classes ein-core request autorevert filenotify ein ein-utils deferred cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ob ob-tangle org-src ob-ref ob-lob ob-table ob-exp ob-comint ob-core ob-eval org-table ol org-keys org-compat org-macs org-loaddefs find-func cal-menu calendar cal-loaddefs gnus-sum shr kinsoku svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time iso8601 gnus-spec gnus-int gnus-range gnus-win gnus nnheader mule-util mu4e-vars message rmc puny rfc822 mml mml-sec epa epg epg-config gnus-util rmail rmail-loaddefs time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader mu4e-meta subed subed-vtt subed-srt subed-common subed-mpv subed-debug subed-config dired-x inf-ruby ruby-mode smie melpa-stats ht dash anaphora a company haskell-interactive-mode haskell-presentation-mode haskell-process haskell-session haskell-compile haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme rx haskell-align-imports haskell-complete-module haskell-ghc-support etags fileloop generator dabbrev haskell-customize hydra lv use-package-ensure paren solarized-theme solarized-definitions projectile skeleton ibuf-macs find-dired dired dired-loaddefs ibuf-ext ibuffer ibuffer-loaddefs grep flx-ido flx google-translate-default-ui google-translate-core-ui facemenu color ido google-translate-core google-translate-tk google-translate-backend use-package-bind-key bind-key auto-complete advice popup cus-edit pp cus-load wid-edit ess-r-mode ess-r-flymake flymake-proc flymake warnings thingatpt ess-r-xref xref ess-trns ess-r-package shell pcomplete ess-r-completion ess-roxy ess-r-syntax ess-rd noutline outline hideshow ess-s-lang ess-help ess-mode ess-inf project format-spec ess-tracebug ess ess-utils ess-custom compile text-property-search comint ansi-color emms-player-mplayer emms-player-simple emms emms-compat cl-extra help-mode use-package-core derived beacon easy-mmode pcase hl-line winner ring edmacro kmacro finder-inf json-reformat-autoloads json-snatcher-autoloads sml-mode-autoloads tornado-template-mode-autoloads info package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type 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 elisp-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 cl-generic 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 charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 683719 26063) (symbols 48 40151 1) (strings 32 130955 6499) (string-bytes 1 4673460) (vectors 16 46664) (vector-slots 8 612189 16898) (floats 8 460 157) (intervals 56 386 0) (buffers 992 10))
bug-gnu-emacs <at> gnu.org
:bug#48990
; Package emacs
.
(Sun, 13 Jun 2021 07:56:01 GMT) Full text and rfc822 format available.Message #8 received at 48990 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: dick <dick.r.chiang <at> gmail.com>, Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: 48990 <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Sun, 13 Jun 2021 10:55:17 +0300
> From: dick <dick.r.chiang <at> gmail.com> > Date: Sat, 12 Jun 2021 19:00:27 -0400 > > # all good > src/emacs -Q --batch -l ./usurped.el > > # buffer-local causes let-bound variable to freak out > src/emacs -Q --batch --eval "(setq confuse-thread t)" -l ./usurped.el > > # buffer-local causes basic setq to freak out > src/emacs -Q --batch --eval "(setq confuse-main t)" -l ./usurped.el Please show the results you see in the 2 problematic cases, and please explain what did you expect instead and why. FWIW, I don't necessarily see anything surprising in the results: you basically let several threads step on each other's toes by modifying the same variable with non-deterministic relative timings. But maybe I'm missing something, which is why I ask for details. Or maybe Stefan could show me the light.
bug-gnu-emacs <at> gnu.org
:bug#48990
; Package emacs
.
(Wed, 29 Sep 2021 03:29:01 GMT) Full text and rfc822 format available.Message #11 received at 48990 <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> iro.umontreal.ca> To: dick <dick.r.chiang <at> gmail.com> Cc: 48990 <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Tue, 28 Sep 2021 23:28:47 -0400
> # buffer-local causes let-bound variable to freak out > src/emacs -Q --batch --eval "(setq confuse-thread t)" -l ./usurped.el I get: failed in thread#1, var is local-4 failed in thread#2, var is local-4 failed in thread#3, var is local-4 failed in thread#0, var is local-4 succeeded in thread#4, var is let which indeed is quite wrong, since the thread let-binds `doomsday` to "let" and then doesn't mutate it anywhere. Sounds like a bug in the context switch code. Stefan
bug-gnu-emacs <at> gnu.org
:bug#48990
; Package emacs
.
(Wed, 29 Sep 2021 11:52:01 GMT) Full text and rfc822 format available.Message #14 received at 48990 <at> debbugs.gnu.org (full text, mbox):
From: dick <dick.r.chiang <at> gmail.com> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: 48990 <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Wed, 29 Sep 2021 07:51:46 -0400
Yes. Incidentally this bug (along with several other thread-related problems) has been fixed in my fork. https://github.com/dickmao/commercial-emacs Perhaps one day soon, I will muster the inner strength to wage the political battle to land it in GNU Emacs. Thus far though my nontrivial, wide-ranging fixes have been met with FUD.
bug-gnu-emacs <at> gnu.org
:bug#48990
; Package emacs
.
(Wed, 29 Sep 2021 12:50:02 GMT) Full text and rfc822 format available.Message #17 received at 48990 <at> debbugs.gnu.org (full text, mbox):
From: dick <dick.r.chiang <at> gmail.com> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: 48990 <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Wed, 29 Sep 2021 08:49:50 -0400
I'll add [1] that anyone so motivated could just lift the fix from data.c from Commercial. GPLv3 is largely gibberish to me, but I believe the salient aspect is I must at least make my changes available for public consumption even if I don't have to spoon-feed them. [1] See how using a web-based issue tracker would have allowed me to edit my previous response rather than tacking on another message to an annoyingly long queue? Brevity, folks. It's the key to effective communication.
Stefan Monnier <monnier <at> iro.umontreal.ca>
:dick <dick.r.chiang <at> gmail.com>
:Message #22 received at 48990-done <at> debbugs.gnu.org (full text, mbox):
From: Stefan Monnier <monnier <at> iro.umontreal.ca> To: dick <dick.r.chiang <at> gmail.com> Cc: 48990-done <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Sat, 12 Feb 2022 15:28:56 -0500
Thanks for the report. I just pushed a patch to `master` which fixes this bug by replacing the context switch code with that originally written for `backtrace-eval`, which already handles those cases (more) correctly. Stefan
bug-gnu-emacs <at> gnu.org
:bug#48990
; Package emacs
.
(Sun, 13 Feb 2022 19:19:03 GMT) Full text and rfc822 format available.Message #25 received at 48990-done <at> debbugs.gnu.org (full text, mbox):
From: dick <dick.r.chiang <at> gmail.com> To: Stefan Monnier <monnier <at> iro.umontreal.ca> Cc: 48990-done <at> debbugs.gnu.org Subject: Re: bug#48990: 28.0.50; buffer-local and threads malarkey Date: Sat, 12 Feb 2022 17:58:17 -0500
Ah, much better, this is the root-node fix I was looking for. In my defense, I have in my notes (now gibberish) that I considered overhauling {re,un}bind_for_thread_switch but settled on a less robust, less intrusive fix at the problem's leaf node.
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Mon, 14 Mar 2022 11:24:11 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.