* bug#57464: 28.1.50; gdb-mi disassembly is not shown over tramp
@ 2022-08-28 13:27 Jake Moss
2022-08-29 10:19 ` Michael Albinus
0 siblings, 1 reply; 3+ messages in thread
From: Jake Moss @ 2022-08-28 13:27 UTC (permalink / raw)
To: 57464
[-- Attachment #1: Type: text/plain, Size: 32395 bytes --]
When using gdb over tramp `M-x gdb-display-disassembly-buffer` displays an
empty buffer.
Expected behaviour:
`M-x gdb-display-disassembly-buffer` should display the disassembly of the
current frame.
I've been able to create a minimal example as below:
test.c
-----------------------------------
int main(int argc, char *argv[]) {
return 0;
}
-----------------------------------
gcc -g test.c
emacs -Q
M-x find-file /sudo:root@localhost:/path/to/test.c
M-x gdb a.out
M-x gdb-display-disassembly-buffer
*gud-a.out*
(gdb) start
gdb should display the disassembly of the frame once the program is run.
Instead if shows an empty buffer. The use of sudo is just illustrative,
this also fails when using other protocols such as ssh. Without
`/sudo:root@localhost:` this works as expected.
I believe this is caused by gdb-mi.el passing the full remote path
instead of the remotes local path to gdb. Below is a patch to achieve
the behaviour I expected.
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 66fc4b1..037f64a 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -3998,7 +3998,7 @@ gdb-invalidate-disassembly
(file (gdb-mi--field frame 'fullname))
(line (gdb-mi--field frame 'line)))
(if file
- (format "-data-disassemble -f %s -l %s -n -1 -- 0" file line)
+ (format "-data-disassemble -f %s -l %s -n -1 -- 0" (file-local-name
file) line)
;; If we're unable to get a file name / line for $PC, simply
;; follow $PC, disassembling the next 10 (x ~15 (on IA) ==
;; 150 bytes) instructions.
Thanks!
Jake Moss
In GNU Emacs 28.1.50 (build 1, x86_64-redhat-linux-gnu, GTK+ Version
3.24.31, cairo version 1.17.4)
of 2022-05-01 built on Desktop-fedora
Repository revision: 3b6338c8c351cce721f2f1aa115cadc401179d5c
Repository branch: emacs-28
Windowing system distributor 'The X.Org Foundation', version 11.0.12014000
System Description: Fedora Linux 36 (Workstation Edition)
Configured using:
'configure --build=x86_64-redhat-linux-gnu
--host=x86_64-redhat-linux-gnu --program-prefix=
--disable-dependency-tracking --prefix=/usr --exec-prefix=/usr
--bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc
--datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64
--libexecdir=/usr/libexec --localstatedir=/var
--sharedstatedir=/var/lib --mandir=/usr/share/man
--infodir=/usr/share/info --with-dbus --with-gif --with-jpeg --with-png
--with-rsvg --with-tiff --with-xft --with-xpm --with-x-toolkit=gtk3
--with-gpm=no --with-xwidgets --with-modules --with-harfbuzz
--with-cairo --with-json --with-native-compilation
build_alias=x86_64-redhat-linux-gnu host_alias=x86_64-redhat-linux-gnu
CC=gcc 'CFLAGS=-DMAIL_USE_LOCKF -O2 -flto=auto -ffat-lto-objects
-fexceptions -g -grecord-gcc-switches -pipe -Wall
-Werror=format-security -Wp,-D_FORTIFY_SOURCE=2
-Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=native
-mtune=native -fasynchronous-unwind-tables -fstack-clash-protection
-fcf-protection -fomit-frame-pointer' LDFLAGS=-Wl,-z,relro
PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XDBE XIM XPM XWIDGETS GTK3 ZLIB
Important settings:
value of $LANG: en_AU.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix
Major mode: Elisp
Minor modes in effect:
flyspell-lazy-mode: t
TeX-PDF-mode: t
TeX-source-correlate-mode: t
git-gutter-mode: t
bug-reference-prog-mode: t
evil-traces-mode: t
global-anzu-mode: t
anzu-mode: t
global-evil-surround-mode: t
evil-surround-mode: t
eros-mode: t
highlight-quoted-mode: t
whitespace-mode: t
flycheck-posframe-mode: t
dap-tooltip-mode: t
dap-ui-controls-mode: t
dap-ui-mode: t
treemacs-filewatch-mode: t
treemacs-git-mode: t
treemacs-fringe-indicator-mode: t
gdb-many-windows: t
dap-mode: t
rainbow-delimiters-mode: t
vi-tilde-fringe-mode: t
highlight-numbers-mode: t
display-line-numbers-mode: t
highlight-indent-guides-mode: t
projectile-mode: t
persp-mode: t
solaire-global-mode: t
hl-todo-mode: t
org-roam-db-autosync-mode: t
outline-minor-mode: t
yas-global-mode: t
yas-minor-mode: t
which-key-mode: t
savehist-mode: t
better-jumper-mode: t
better-jumper-local-mode: t
vertico-mode: t
all-the-icons-completion-mode: t
marginalia-mode: t
evil-goggles-mode: t
evil-snipe-override-mode: t
evil-snipe-mode: t
evil-snipe-override-local-mode: t
evil-snipe-local-mode: t
global-corfu-mode: t
corfu-mode: t
recentf-mode: t
save-place-mode: t
global-so-long-mode: t
global-git-commit-mode: t
gcmh-mode: t
global-hl-line-mode: t
hl-line-mode: t
winner-mode: t
smartparens-global-mode: t
smartparens-mode: t
ws-butler-global-mode: t
ws-butler-mode: t
global-undo-fu-session-mode: t
undo-fu-session-mode: t
undo-fu-mode: t
global-flycheck-mode: t
flycheck-mode: t
doom-modeline-mode: t
shell-dirtrack-mode: t
evil-mode: t
evil-local-mode: t
windmove-mode: t
+popup-mode: t
override-global-mode: t
general-override-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
window-divider-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
size-indication-mode: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package
hides /home/jake/.emacs.d/.local/straight/repos/use-package/use-package
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-lint
hides /home/jake/.emacs.d/.local/straight/repos/use-package/use-package-lint
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-jump
hides /home/jake/.emacs.d/.local/straight/repos/use-package/use-package-jump
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-ensure
hides
/home/jake/.emacs.d/.local/straight/repos/use-package/use-package-ensure
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-diminish
hides
/home/jake/.emacs.d/.local/straight/repos/use-package/use-package-diminish
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-delight
hides
/home/jake/.emacs.d/.local/straight/repos/use-package/use-package-delight
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-core
hides /home/jake/.emacs.d/.local/straight/repos/use-package/use-package-core
/home/jake/.emacs.d/.local/straight/build-28.1.50/use-package/use-package-bind-key
hides
/home/jake/.emacs.d/.local/straight/repos/use-package/use-package-bind-key
/home/jake/.emacs.d/.local/straight/build-28.1.50/bind-key/bind-key
hides /home/jake/.emacs.d/.local/straight/repos/use-package/bind-key
/home/jake/.emacs.d/.local/straight/build-28.1.50/straight/straight
hides /home/jake/.emacs.d/.local/straight/repos/straight.el/straight
/home/jake/.emacs.d/.local/straight/build-28.1.50/straight/straight-x
hides /home/jake/.emacs.d/.local/straight/repos/straight.el/straight-x
/home/jake/.emacs.d/.local/straight/build-28.1.50/straight/straight-ert-print-hack
hides
/home/jake/.emacs.d/.local/straight/repos/straight.el/straight-ert-print-hack
/home/jake/.emacs.d/.local/straight/build-28.1.50/cmake-mode/cmake-mode
hides /usr/share/emacs/site-lisp/cmake/cmake-mode
/home/jake/.emacs.d/.local/straight/build-28.1.50/transient/transient
hides /usr/share/emacs/28.1.50/lisp/transient
/home/jake/.emacs.d/.local/straight/repos/straight.el/indent hides
/usr/share/emacs/28.1.50/lisp/indent
/home/jake/.emacs.d/.local/straight/build-28.1.50/xref/xref hides
/usr/share/emacs/28.1.50/lisp/progmodes/xref
/home/jake/.emacs.d/.local/straight/build-28.1.50/project/project hides
/usr/share/emacs/28.1.50/lisp/progmodes/project
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-texinfo hides
/usr/share/emacs/28.1.50/lisp/org/ox-texinfo
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-publish hides
/usr/share/emacs/28.1.50/lisp/org/ox-publish
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-org hides
/usr/share/emacs/28.1.50/lisp/org/ox-org
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-odt hides
/usr/share/emacs/28.1.50/lisp/org/ox-odt
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-md hides
/usr/share/emacs/28.1.50/lisp/org/ox-md
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-man hides
/usr/share/emacs/28.1.50/lisp/org/ox-man
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-html hides
/usr/share/emacs/28.1.50/lisp/org/ox-html
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox hides
/usr/share/emacs/28.1.50/lisp/org/ox
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-latex hides
/usr/share/emacs/28.1.50/lisp/org/ox-latex
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-icalendar hides
/usr/share/emacs/28.1.50/lisp/org/ox-icalendar
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-koma-letter
hides /usr/share/emacs/28.1.50/lisp/org/ox-koma-letter
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-beamer hides
/usr/share/emacs/28.1.50/lisp/org/ox-beamer
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ox-ascii hides
/usr/share/emacs/28.1.50/lisp/org/ox-ascii
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-timer hides
/usr/share/emacs/28.1.50/lisp/org/org-timer
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-table hides
/usr/share/emacs/28.1.50/lisp/org/org-table
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-tempo hides
/usr/share/emacs/28.1.50/lisp/org/org-tempo
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-mobile hides
/usr/share/emacs/28.1.50/lisp/org/org-mobile
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-plot hides
/usr/share/emacs/28.1.50/lisp/org/org-plot
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-mouse hides
/usr/share/emacs/28.1.50/lisp/org/org-mouse
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-num hides
/usr/share/emacs/28.1.50/lisp/org/org-num
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-lint hides
/usr/share/emacs/28.1.50/lisp/org/org-lint
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-refile hides
/usr/share/emacs/28.1.50/lisp/org/org-refile
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-protocol hides
/usr/share/emacs/28.1.50/lisp/org/org-protocol
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-src hides
/usr/share/emacs/28.1.50/lisp/org/org-src
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org hides
/usr/share/emacs/28.1.50/lisp/org/org
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-pcomplete
hides /usr/share/emacs/28.1.50/lisp/org/org-pcomplete
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-inlinetask
hides /usr/share/emacs/28.1.50/lisp/org/org-inlinetask
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-macs hides
/usr/share/emacs/28.1.50/lisp/org/org-macs
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-list hides
/usr/share/emacs/28.1.50/lisp/org/org-list
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-macro hides
/usr/share/emacs/28.1.50/lisp/org/org-macro
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-indent hides
/usr/share/emacs/28.1.50/lisp/org/org-indent
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-id hides
/usr/share/emacs/28.1.50/lisp/org/org-id
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-keys hides
/usr/share/emacs/28.1.50/lisp/org/org-keys
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-element hides
/usr/share/emacs/28.1.50/lisp/org/org-element
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-habit hides
/usr/share/emacs/28.1.50/lisp/org/org-habit
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-goto hides
/usr/share/emacs/28.1.50/lisp/org/org-goto
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-feed hides
/usr/share/emacs/28.1.50/lisp/org/org-feed
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-datetree hides
/usr/share/emacs/28.1.50/lisp/org/org-datetree
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-footnote hides
/usr/share/emacs/28.1.50/lisp/org/org-footnote
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-agenda hides
/usr/share/emacs/28.1.50/lisp/org/org-agenda
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-ctags hides
/usr/share/emacs/28.1.50/lisp/org/org-ctags
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-faces hides
/usr/share/emacs/28.1.50/lisp/org/org-faces
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-entities hides
/usr/share/emacs/28.1.50/lisp/org/org-entities
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-colview hides
/usr/share/emacs/28.1.50/lisp/org/org-colview
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-clock hides
/usr/share/emacs/28.1.50/lisp/org/org-clock
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-duration hides
/usr/share/emacs/28.1.50/lisp/org/org-duration
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-capture hides
/usr/share/emacs/28.1.50/lisp/org/org-capture
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-attach hides
/usr/share/emacs/28.1.50/lisp/org/org-attach
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-archive hides
/usr/share/emacs/28.1.50/lisp/org/org-archive
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-attach-git
hides /usr/share/emacs/28.1.50/lisp/org/org-attach-git
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-crypt hides
/usr/share/emacs/28.1.50/lisp/org/org-crypt
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-compat hides
/usr/share/emacs/28.1.50/lisp/org/org-compat
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-w3m hides
/usr/share/emacs/28.1.50/lisp/org/ol-w3m
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-gnus hides
/usr/share/emacs/28.1.50/lisp/org/ol-gnus
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-rmail hides
/usr/share/emacs/28.1.50/lisp/org/ol-rmail
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-mhe hides
/usr/share/emacs/28.1.50/lisp/org/ol-mhe
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-eww hides
/usr/share/emacs/28.1.50/lisp/org/ol-eww
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-man hides
/usr/share/emacs/28.1.50/lisp/org/ol-man
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-info hides
/usr/share/emacs/28.1.50/lisp/org/ol-info
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-fortran hides
/usr/share/emacs/28.1.50/lisp/org/ob-fortran
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-irc hides
/usr/share/emacs/28.1.50/lisp/org/ol-irc
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-eshell hides
/usr/share/emacs/28.1.50/lisp/org/ol-eshell
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol hides
/usr/share/emacs/28.1.50/lisp/org/ol
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-doi hides
/usr/share/emacs/28.1.50/lisp/org/ol-doi
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-docview hides
/usr/share/emacs/28.1.50/lisp/org/ol-docview
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-bibtex hides
/usr/share/emacs/28.1.50/lisp/org/ol-bibtex
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/oc-natbib hides
/usr/share/emacs/28.1.50/lisp/org/oc-natbib
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ol-bbdb hides
/usr/share/emacs/28.1.50/lisp/org/ol-bbdb
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/oc hides
/usr/share/emacs/28.1.50/lisp/org/oc
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/oc-csl hides
/usr/share/emacs/28.1.50/lisp/org/oc-csl
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/oc-biblatex hides
/usr/share/emacs/28.1.50/lisp/org/oc-biblatex
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-C hides
/usr/share/emacs/28.1.50/lisp/org/ob-C
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/oc-basic hides
/usr/share/emacs/28.1.50/lisp/org/oc-basic
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-tangle hides
/usr/share/emacs/28.1.50/lisp/org/ob-tangle
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-table hides
/usr/share/emacs/28.1.50/lisp/org/ob-table
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-sqlite hides
/usr/share/emacs/28.1.50/lisp/org/ob-sqlite
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-sql hides
/usr/share/emacs/28.1.50/lisp/org/ob-sql
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-shell hides
/usr/share/emacs/28.1.50/lisp/org/ob-shell
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-scheme hides
/usr/share/emacs/28.1.50/lisp/org/ob-scheme
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-sed hides
/usr/share/emacs/28.1.50/lisp/org/ob-sed
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-screen hides
/usr/share/emacs/28.1.50/lisp/org/ob-screen
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-sass hides
/usr/share/emacs/28.1.50/lisp/org/ob-sass
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-python hides
/usr/share/emacs/28.1.50/lisp/org/ob-python
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-ruby hides
/usr/share/emacs/28.1.50/lisp/org/ob-ruby
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-R hides
/usr/share/emacs/28.1.50/lisp/org/ob-R
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-processing
hides /usr/share/emacs/28.1.50/lisp/org/ob-processing
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-plantuml hides
/usr/share/emacs/28.1.50/lisp/org/ob-plantuml
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-ref hides
/usr/share/emacs/28.1.50/lisp/org/ob-ref
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-perl hides
/usr/share/emacs/28.1.50/lisp/org/ob-perl
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-org hides
/usr/share/emacs/28.1.50/lisp/org/ob-org
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-octave hides
/usr/share/emacs/28.1.50/lisp/org/ob-octave
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-ocaml hides
/usr/share/emacs/28.1.50/lisp/org/ob-ocaml
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-maxima hides
/usr/share/emacs/28.1.50/lisp/org/ob-maxima
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-matlab hides
/usr/share/emacs/28.1.50/lisp/org/ob-matlab
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-makefile hides
/usr/share/emacs/28.1.50/lisp/org/ob-makefile
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-lua hides
/usr/share/emacs/28.1.50/lisp/org/ob-lua
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-lisp hides
/usr/share/emacs/28.1.50/lisp/org/ob-lisp
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-lilypond hides
/usr/share/emacs/28.1.50/lisp/org/ob-lilypond
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-lob hides
/usr/share/emacs/28.1.50/lisp/org/ob-lob
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-latex hides
/usr/share/emacs/28.1.50/lisp/org/ob-latex
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-julia hides
/usr/share/emacs/28.1.50/lisp/org/ob-julia
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-js hides
/usr/share/emacs/28.1.50/lisp/org/ob-js
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-java hides
/usr/share/emacs/28.1.50/lisp/org/ob-java
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-haskell hides
/usr/share/emacs/28.1.50/lisp/org/ob-haskell
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-groovy hides
/usr/share/emacs/28.1.50/lisp/org/ob-groovy
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-gnuplot hides
/usr/share/emacs/28.1.50/lisp/org/ob-gnuplot
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-forth hides
/usr/share/emacs/28.1.50/lisp/org/ob-forth
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-exp hides
/usr/share/emacs/28.1.50/lisp/org/ob-exp
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-eshell hides
/usr/share/emacs/28.1.50/lisp/org/ob-eshell
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-eval hides
/usr/share/emacs/28.1.50/lisp/org/ob-eval
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-emacs-lisp
hides /usr/share/emacs/28.1.50/lisp/org/ob-emacs-lisp
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-dot hides
/usr/share/emacs/28.1.50/lisp/org/ob-dot
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-ditaa hides
/usr/share/emacs/28.1.50/lisp/org/ob-ditaa
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob hides
/usr/share/emacs/28.1.50/lisp/org/ob
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-core hides
/usr/share/emacs/28.1.50/lisp/org/ob-core
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-css hides
/usr/share/emacs/28.1.50/lisp/org/ob-css
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-comint hides
/usr/share/emacs/28.1.50/lisp/org/ob-comint
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-clojure hides
/usr/share/emacs/28.1.50/lisp/org/ob-clojure
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-calc hides
/usr/share/emacs/28.1.50/lisp/org/ob-calc
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/ob-awk hides
/usr/share/emacs/28.1.50/lisp/org/ob-awk
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-loaddefs hides
/usr/share/emacs/28.1.50/lisp/org/org-loaddefs
/home/jake/.emacs.d/.local/straight/build-28.1.50/org/org-version hides
/usr/share/emacs/28.1.50/lisp/org/org-version
/home/jake/.emacs.d/.local/straight/build-28.1.50/map/map hides
/usr/share/emacs/28.1.50/lisp/emacs-lisp/map
Features:
(evil-collection-evil-mc evil-mc evil-mc-command-execute
evil-mc-command-record evil-mc-cursor-make evil-mc-region
evil-mc-cursor-state evil-mc-undo evil-mc-vars evil-mc-known-commands
evil-mc-common flyspell-correct embark-consult evil-collection-embark
embark ffap evil-collection-help shadow sort mail-extr preview evil-tex
reftex-dcr reftex-auc evil-collection-reftex reftex-toc reftex-cite
reftex-ref reftex-parse reftex reftex-loaddefs reftex-vars flyspell-lazy
ispell flyspell tex-fold adaptive-wrap font-latex latex-mode-expansions
auctex-latexmk tex-buf latex latex-flymake evil-collection-flymake
flymake-proc flymake tex-ispell tex-style tex dbus texmathp
smartparens-latex tex-mode goto-addr magit-patch magit-gitflow
git-gutter-fringe fringe-helper git-gutter bug-reference evil-traces
evil-ex emacsbug sendmail org-indent oc-basic ol-bibtex bibtex
evil-collection-ediff ediff ediff-merg ediff-mult ediff-wind ediff-diff
ediff-help ediff-init ediff-util tramp-cmds evil-anzu anzu vc-hg
evil-collection-vc-git vc-git vc-svn vc vc-dispatcher consult-flycheck
evil-collection-consult consult-vertico consult compat-28
treemacs-bookmarks magit-bookmark evil-collection-bookmark bookmark
cl-print evil-collection-debug debug flycheck-cask evil-embrace
evil-surround embrace expand-region text-mode-expansions
cc-mode-expansions the-org-mode-expansions er-basic-expansions
expand-region-core expand-region-custom eros elisp-demos
evil-collection-indent highlight-quoted evil-collection-helpful helpful
trace evil-collection-edebug edebug backtrace info-look
evil-collection-info info help-fns radix-tree evil-collection-elisp-refs
elisp-refs rfc2104 delsel mule-util evil-collection-view view lsp-zig
lsp-steep lsp-svelte lsp-sqls lsp-yaml lsp-xml lsp-vimscript lsp-vhdl
lsp-volar lsp-vetur lsp-html lsp-verilog lsp-vala lsp-v lsp-typeprof
lsp-ttcn3 lsp-toml lsp-terraform lsp-tex lsp-sorbet lsp-solargraph
lsp-rust lsp-rf lsp-remark lsp-r lsp-purescript lsp-pylsp lsp-pyls
lsp-pwsh lsp-php lsp-perlnavigator lsp-perl lsp-openscad lsp-ocaml
lsp-magik lsp-nix lsp-nim lsp-nginx lsp-markdown lsp-lua lsp-kotlin
lsp-json lsp-javascript lsp-idris lsp-haxe lsp-groovy lsp-hack
lsp-graphql lsp-gleam lsp-go lsp-completion lsp-gdscript lsp-fsharp
lsp-fortran lsp-eslint lsp-erlang lsp-emmet lsp-elixir lsp-elm
lsp-dockerfile lsp-dhall lsp-d lsp-css lsp-csharp gnutls lsp-crystal
lsp-cmake lsp-clojure lsp-semantic-tokens lsp-clangd lsp-beancount
lsp-bash lsp-ansible lsp-angular lsp-ada lsp-actionscript lsp-racket
jka-compr auto-minor-mode disp-table whitespace flycheck-posframe
evil-textobj-tree-sitter tree-sitter-langs tree-sitter-langs-build
evil-collection-tar-mode tar-mode evil-collection-arc-mode arc-mode
archive-mode tree-sitter-hl ts-fold ts-fold-summary ts-fold-parsers
ts-fold-util tree-sitter tree-sitter-load tree-sitter-cli tsc tsc-dyn
tsc-dyn-get tsc-obsolete lsp-pyright lsp-haskell dap-gdb-lldb dap-utils
dap-lldb ccls ccls-member-hierarchy ccls-inheritance-hierarchy
ccls-call-hierarchy ccls-tree ccls-code-lens ccls-semantic-highlight
ccls-common dap-mouse dap-ui lsp-treemacs lsp-treemacs-themes
treemacs-magit treemacs-persp treemacs-projectile treemacs-evil treemacs
treemacs-header-line treemacs-compatibility treemacs-mode
treemacs-interface treemacs-extensions treemacs-mouse-interface
treemacs-tags treemacs-persistence treemacs-filewatch-mode
treemacs-follow-mode treemacs-rendering treemacs-async
treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator treemacs-scope treemacs-faces treemacs-icons
treemacs-themes treemacs-core-utils pfuture treemacs-logging
treemacs-customization treemacs-macros gdb-mi gud bui bui-list bui-info
bui-entry bui-core bui-history bui-button bui-utils lsp-lens dap-mode
dap-launch posframe dap-overlays lsp-mode lsp-protocol
evil-collection-xref xref project spinner network-stream
smartparens-markdown evil-collection-markdown-mode markdown-mode lv
inline ht ewoc macrostep-c cmacexp evil-collection-macrostep macrostep
rainbow-delimiters vi-tilde-fringe highlight-numbers parent-mode
display-line-numbers highlight-indent-guides smartparens-c cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs projectile ibuf-ext evil-collection-ibuffer ibuffer
ibuffer-loaddefs dired-aux diredfl all-the-icons-dired dired-x
vertico-directory cursor-sensor vertico-repeat hide-mode-line persp-mode
doom-themes-ext-treemacs doom-themes-ext-org solaire-mode face-remap
doom-one-theme doom-themes doom-themes-base org-agenda
evil-collection-magit-todos magit-todos pcre2el rxt re-builder hl-todo
async evil-collection-grep grep evil-collection-compile compile
evil-collection-org org-roam-ui org-roam-dailies websocket bindat
simple-httpd evil-collection-org-roam org-roam-migrate org-roam-log
org-roam-mode org-roam-capture org-roam-id org-roam-node org-roam-db
org-roam-utils org-roam-compat org-roam org-capture org-attach
emacsql-sqlite url-http url-auth url-gw nsm emacsql emacsql-compiler
smartparens-org org-yt org-element org-persist xdg org-id org-refile
avl-tree generator org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete org-list
org-faces org-entities noutline outline org-version ob-emacs-lisp
ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys
oc org-compat org-macs org-loaddefs evil-collection-calendar cal-menu
calendar cal-loaddefs magit-autoloads evil-collection-magit
magit-submodule magit-obsolete magit-popup 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 magit-diff smerge-mode diff evil-collection-diff-mode
diff-mode magit-core magit-autorevert autorevert filenotify magit-margin
magit-transient magit-process magit-mode doom-snippets doom-snippets-lib
yasnippet evil-collection-elisp-mode elisp-mode dtrt-indent
evil-collection-which-key which-key savehist better-jumper
evil-collection-vertico vertico orderless all-the-icons-completion
marginalia evil-goggles pulse evil-easymotion evil-snipe kind-icon
svg-lib color svg dom xml evil-collection-corfu corfu tramp-cache
tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x
tramp-compat parse-time iso8601 ls-lisp recentf tree-widget saveplace
evil-collection-so-long so-long git-commit magit-git magit-base
evil-collection-magit-section magit-section crm compat-27 compat-26
with-editor transient format-spec compat server evil-collection-log-edit
log-edit message rmc puny evil-collection-dired dired dired-loaddefs
rfc822 mml mml-sec evil-collection-epa epa epg rfc6068 epg-config
gnus-util rmail rmail-loaddefs time-date mm-decode mm-bodies mm-encode
mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log gcmh
hl-line winner smartparens-config smartparens-text smartparens ws-butler
undo-fu-session undo-fu flycheck-package package-lint
evil-collection-imenu imenu evil-collection-finder finder finder-inf
lisp-mnt mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums
mail-prsvr evil-collection-package-menu doom-packages 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 eieio
eieio-core eieio-loaddefs password-cache url-vars
evil-collection-flycheck flycheck json map find-func doom-modeline
doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path
f f-shortdoc shortdoc text-property-search s all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons dash doom-start
evil-collection-vundo evil-collection-custom cus-edit cus-load wid-edit
evil-collection-comint evil-collection annalist vundo cape let-alist
smartparens-lua evil evil-integration evil-maps evil-commands reveal
evil-jumps evil-command-window evil-search shell pcomplete comint
ansi-color evil-types evil-macros evil-repeat evil-states evil-core comp
comp-cstr warnings rx advice evil-common windmove calc calc-loaddefs
calc-macs thingatpt rect evil-digraphs evil-vars ring derived
use-package-bind-key bind-key edmacro kmacro doom-editor doom-projects
doom-ui easy-mmode doom-keybinds pp general cl-extra help-mode seq
byte-opt cl-seq use-package-core bytecomp byte-compile cconv tex-site
realgud-recursive-autoloads doom-modules doom doom-lib pcase cl-macs gv
jansson dynamic-modules subr-x cl-loaddefs cl-lib iso-transl tooltip
eldoc paren 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 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 emoji-zwj 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 xwidget-internal dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)
Memory information:
((conses 16 1234859 158016)
(symbols 48 93981 71)
(strings 32 293137 39028)
(string-bytes 1 10605776)
(vectors 16 140487)
(vector-slots 8 2657032 94076)
(floats 8 3191 1578)
(intervals 56 10695 2241)
(buffers 992 47))
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: gdb-mi-tramp-disassemble.patch --]
[-- Type: text/x-patch; name="gdb-mi-tramp-disassemble.patch", Size: 634 bytes --]
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index 66fc4b1..037f64a 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -3998,7 +3998,7 @@ gdb-invalidate-disassembly
(file (gdb-mi--field frame 'fullname))
(line (gdb-mi--field frame 'line)))
(if file
- (format "-data-disassemble -f %s -l %s -n -1 -- 0" file line)
+ (format "-data-disassemble -f %s -l %s -n -1 -- 0" (file-local-name file) line)
;; If we're unable to get a file name / line for $PC, simply
;; follow $PC, disassembling the next 10 (x ~15 (on IA) ==
;; 150 bytes) instructions.
^ permalink raw reply related [flat|nested] 3+ messages in thread
* bug#57464: 28.1.50; gdb-mi disassembly is not shown over tramp
2022-08-28 13:27 bug#57464: 28.1.50; gdb-mi disassembly is not shown over tramp Jake Moss
@ 2022-08-29 10:19 ` Michael Albinus
2022-08-29 15:23 ` Lars Ingebrigtsen
0 siblings, 1 reply; 3+ messages in thread
From: Michael Albinus @ 2022-08-29 10:19 UTC (permalink / raw)
To: Jake Moss; +Cc: 57464
Jake Moss <jake.moss@uq.net.au> writes:
Hi Jake,
> I believe this is caused by gdb-mi.el passing the full remote path
> instead of the remotes local path to gdb. Below is a patch to achieve
> the behaviour I expected.
>
>
> diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
> index 66fc4b1..037f64a 100644
> --- a/lisp/progmodes/gdb-mi.el
> +++ b/lisp/progmodes/gdb-mi.el
> @@ -3998,7 +3998,7 @@ gdb-invalidate-disassembly
> (file (gdb-mi--field frame 'fullname))
> (line (gdb-mi--field frame 'line)))
> (if file
> - (format "-data-disassemble -f %s -l %s -n -1 -- 0" file line)
> + (format "-data-disassemble -f %s -l %s -n -1 -- 0" (file-local-name
> file) line)
> ;; If we're unable to get a file name / line for $PC, simply
> ;; follow $PC, disassembling the next 10 (x ~15 (on IA) ==
> ;; 150 bytes) instructions.
I'm short in time this week, so I cannot test. But your patch LGTM, so
if somebody wants to take the stab, it could be applied to master.
> Thanks!
> Jake Moss
Best regards, Michael.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-08-29 15:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-28 13:27 bug#57464: 28.1.50; gdb-mi disassembly is not shown over tramp Jake Moss
2022-08-29 10:19 ` Michael Albinus
2022-08-29 15:23 ` Lars Ingebrigtsen
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.