From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#73436: eglot-1.17 fails to run in emacs 29.4 Date: Mon, 23 Sep 2024 14:58:17 +0300 Message-ID: <861q1ah99i.fsf@gnu.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11968"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 73436@debbugs.gnu.org To: Dov Grobgeld , =?UTF-8?Q?Jo=C3=A3o_?= =?UTF-8?Q?T=C3=A1vora?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Sep 23 13:58:58 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sshiT-0002uw-0z for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 23 Sep 2024 13:58:57 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sshiE-0002zI-Cm; Mon, 23 Sep 2024 07:58:42 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sshiC-0002z8-Qa for bug-gnu-emacs@gnu.org; Mon, 23 Sep 2024 07:58:41 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sshiB-00005B-4n for bug-gnu-emacs@gnu.org; Mon, 23 Sep 2024 07:58:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-version:References:In-Reply-To:From:Date:To:Subject; bh=DJ9HJDgGuSzwhnKpo9PnXqGn5+gn5D+TweDETbh5VyI=; b=N141I/nHCm8f/OTq2iud9uJ3HaAeeLLpU7FsopAq6t4qqx1bk8ZuuVMTszvwIUMqODkklDTf//fT5gbJDLDGpAaOoDrukuGANCpva/3dE2wTzf0agvvzEG9bZtaFTseZ88kFznaO1g2yvt6cB25qA2FchYkfDjHVS1kzw/l7RRi8oZOcBmLKsfGa2SdcBTu92R1k5tDlmzVj6tSa79YcCQ5eozygdZVoSY+XPLIHDrZ1ZMkJ57LNgjPBg1MJZzm5s/ewE3ypxG7QuzlkmsQf4umEGMgdDX/c3M7bKI8FRz+ZYO+J63eRt1KzyrQdF0vea3KkLvN7dRtvVAOks/Zu2w==; Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sshiY-0000p2-0m for bug-gnu-emacs@gnu.org; Mon, 23 Sep 2024 07:59:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 23 Sep 2024 11:59:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 73436 X-GNU-PR-Package: emacs Original-Received: via spool by 73436-submit@debbugs.gnu.org id=B73436.17270927363145 (code B ref 73436); Mon, 23 Sep 2024 11:59:01 +0000 Original-Received: (at 73436) by debbugs.gnu.org; 23 Sep 2024 11:58:56 +0000 Original-Received: from localhost ([127.0.0.1]:43381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sshiR-0000oe-4k for submit@debbugs.gnu.org; Mon, 23 Sep 2024 07:58:56 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:44164) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sshiN-0000oM-VF for 73436@debbugs.gnu.org; Mon, 23 Sep 2024 07:58:53 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sshhv-0008WA-2z; Mon, 23 Sep 2024 07:58:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=DJ9HJDgGuSzwhnKpo9PnXqGn5+gn5D+TweDETbh5VyI=; b=mEuDOmNgc5G+dsddYBCo uIrjZNrY/fyNSsC604OBsM26NpAE6zsZSTWxuZVgDV/7oO30KcmflheCrVcJRCVkOo5aY3TN/N0Ad tGmWzK+vXCi6Ctp2SS+LVSksZh1shjLzv/agQSHlE+KSCl7sSHya2eRBtr3yFYnuccFKREk+EHSIV Xo9le+TXXzWM/cpBweWd1q7kG1n3TNpLyp1PQTdpDMUSWLl2oYqmmkK5fxSicyXahFHqacvasR9lk vfPzp2V9MiLuEF7PQIpEMA7ST5NkA8hi2d639i3pAU1S5hFHsqT6//Ve+NQO7bh7ob2PvWH7m6gAv TAY9hLHBVplobQ==; In-Reply-To: (message from Dov Grobgeld on Mon, 23 Sep 2024 11:58:03 +0300) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:292272 Archived-At: > From: Dov Grobgeld > Date: Mon, 23 Sep 2024 11:58:03 +0300 > > Running the latest version of eglot, version 1.17, installed by > package-list-packages, on emacs 29.4 fails. Adding João. > Here's what I did: > > $ cd /tmp/eglot-1.17 > $ emacs -Q -nw eglot.el > > and then the interactive commands > > M-x eval-buffer > C-x C-f hello.c > C-: (setq debug-on-error t) > M-x eglot > > This resulted in an error. Here is the stack trace: > > Debugger entered--Lisp error: (invalid-slot-name "# eglot-lsp-server-93e4e78>" :events-buffer-config) > signal(invalid-slot-name ("# eglot-lsp-server-93e4e78>" :events-buffer-config)) > slot-missing(# > :events-buffer-config oset (:size 2000000 :format full)) > #f(compiled-function (obj slots) "Set slots of OBJ with SLOTS which > is a list of name/value pairs.\nCalled from the constructor routine." > #)(# eglot-lsp-server-93e4e78> (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode > c++-mode c++-t..." :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > apply(#f(compiled-function (obj slots) "Set slots of OBJ with SLOTS > which is a list of name/value pairs.\nCalled from the constructor > routine." #) # eglot-lsp-server-93e4e78> (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode > c++-mode c++-t..." :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > shared-initialize(# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > #f(compiled-function (this &optional args) "Construct the new object > THIS based on ARGS.\nARGS is a property list where odd numbered > elements are tags, and\neven numbered elements are the values to store > in the tagged slot.\nIf you overload the `initialize-instance', there > you will need to\ncall `shared-initialize' yourself, or you can call > `call-next-method'\nto have this constructor called automatically. If > these steps are\nnot taken, then new objects of your class will not > have their values\ndynamically set from ARGS." # -0x1f60eebd0e85d7f7>)(# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > apply(#f(compiled-function (this &optional args) "Construct the new > object THIS based on ARGS.\nARGS is a property list where odd numbered > elements are tags, and\neven numbered elements are the values to store > in the tagged slot.\nIf you overload the `initialize-instance', there > you will need to\ncall `shared-initialize' yourself, or you can call > `call-next-method'\nto have this constructor called automatically. If > these steps are\nnot taken, then new objects of your class will not > have their values\ndynamically set from ARGS." # -0x1f60eebd0e85d7f7>) (# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t)))))) > #f(compiled-function (&rest args) #)() > #f(compiled-function (cl--cnm conn slots) # 0x18a7bfd9b312194c>)(#f(compiled-function (&rest args) # -0x7469b45b80fef61>) # > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > apply(#f(compiled-function (cl--cnm conn slots) # 0x18a7bfd9b312194c>) #f(compiled-function (&rest args) # -0x7469b45b80fef61>) (# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t)))))) > #f(compiled-function (conn slots) # 0x164956dec53e81bc>)(# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > apply(#f(compiled-function (conn slots) # 0x164956dec53e81bc>) (# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t)))))) > #f(compiled-function (&rest args) # -0xb77c4438ff27908>)(# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > apply(#f(compiled-function (&rest args) # -0xb77c4438ff27908>) # > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > initialize-instance(# > (:name "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > #f(compiled-function (class &rest slots) "Default constructor for > CLASS `eieio-default-superclass'.\nSLOTS are the initialization slots > used by `initialize-instance'.\nThis static method is called when an > object is constructed.\nIt allocates the vector used to represent an > EIEIO object, and then\ncalls `initialize-instance' on that object." > #)(eglot-lsp-server :name "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." :events-buffer-config > (:size 2000000 :format full) :notification-dispatcher (closure ((fn . > eglot-handle-notification)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :request-dispatcher (closure ((fn . eglot-handle-request)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :on-shutdown eglot--on-shutdown > :process (closure ((contact "/usr/bin/clangd") (server-info) > (readable-name . "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode > c++-t...") tramp-ssh-controlmaster-options > tramp-use-ssh-controlmaster-options) nil (let ((default-directory > default-directory) (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t)))) > apply(#f(compiled-function (class &rest slots) "Default constructor > for CLASS `eieio-default-superclass'.\nSLOTS are the initialization > slots used by `initialize-instance'.\nThis static method is called > when an object is constructed.\nIt allocates the vector used to > represent an EIEIO object, and then\ncalls `initialize-instance' on > that object." #) eglot-lsp-server (:name > "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." > :events-buffer-config (:size 2000000 :format full) > :notification-dispatcher (closure ((fn . eglot-handle-notification)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :request-dispatcher (closure ((fn > . eglot-handle-request)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :on-shutdown eglot--on-shutdown :process (closure ((contact > "/usr/bin/clangd") (server-info) (readable-name . "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t...") > tramp-ssh-controlmaster-options tramp-use-ssh-controlmaster-options) > nil (let ((default-directory default-directory) > (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > make-instance(eglot-lsp-server :name "EGLOT (eglot-1.17/(c-mode > c-ts-mode c++-mode c++-t..." :events-buffer-config (:size 2000000 > :format full) :notification-dispatcher (closure ((fn . > eglot-handle-notification)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :request-dispatcher (closure ((fn . eglot-handle-request)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :on-shutdown eglot--on-shutdown > :process (closure ((contact "/usr/bin/clangd") (server-info) > (readable-name . "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode > c++-t...") tramp-ssh-controlmaster-options > tramp-use-ssh-controlmaster-options) nil (let ((default-directory > default-directory) (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t)))) > apply(make-instance eglot-lsp-server :name "EGLOT > (eglot-1.17/(c-mode c-ts-mode c++-mode c++-t..." :events-buffer-config > (:size 2000000 :format full) :notification-dispatcher (closure ((fn . > eglot-handle-notification)) (server method params) (let > ((eglot--cached-server server)) (apply fn server method (append params > nil)))) :request-dispatcher (closure ((fn . eglot-handle-request)) > (server method params) (let ((eglot--cached-server server)) (apply fn > server method (append params nil)))) :on-shutdown eglot--on-shutdown > (:process (closure ((contact "/usr/bin/clangd") (server-info) > (readable-name . "EGLOT (eglot-1.17/(c-mode c-ts-mode c++-mode > c++-t...") tramp-ssh-controlmaster-options > tramp-use-ssh-controlmaster-options) nil (let ((default-directory > default-directory) (tramp-use-ssh-controlmaster-options 'suppress) > (tramp-ssh-controlmaster-options "-o ControlMaster=no -o > ControlPath=none")) (make-process :name readable-name :command (setq > server-info (eglot--cmd contact)) :connection-type 'pipe :coding > 'utf-8-emacs-unix :noquery t :stderr (get-buffer-create (format "*%s > stderr*" readable-name)) :file-handler t))))) > (let* ((default-directory (project-root project)) (nickname > (project-name project)) (readable-name (format "EGLOT (%s/%s)" > nickname managed-modes)) server-info (contact (if (functionp contact) > (funcall contact) contact)) (initargs (cond ((keywordp (car contact)) > contact) ((integerp (car (cdr contact))) (setq server-info (list > (format "%s:%s" ... ...))) (list ':process #'(lambda nil ...))) ((and > (stringp (car contact)) (cl-find-if #'... contact)) (setq server-info > (list "")) (list ':process > (jsonrpc-autoport-bootstrap readable-name contact :connect-args > '...))) ((stringp (car contact)) (let* ((probe ...) (more-initargs > ...) (contact ...)) (cons ':process (cons ... more-initargs)))))) > (spread #'(lambda (fn) #'(lambda (server method params) (let ... > ...)))) (server (apply #'make-instance class :name readable-name > :events-buffer-config eglot-events-buffer-config > :notification-dispatcher (funcall spread #'eglot-handle-notification) > :request-dispatcher (funcall spread #'eglot-handle-request) > :on-shutdown #'eglot--on-shutdown initargs)) (canceled nil) (tag > (make-symbol "connected-catch-tag"))) (if server-info (progn > (jsonrpc--debug server "Running language server: %s" (string-join > server-info " ")))) (let* ((v server)) (\(setf\ > eglot--saved-initargs\) initargs v)) (let* ((v server)) (\(setf\ > eglot--project\) project v)) (let* ((v server)) (\(setf\ > eglot--project-nickname\) nickname v)) (let* ((v server)) (\(setf\ > eglot--languages\) (let* ((--cl-var-- managed-modes) (m nil) > (--cl-var-- language-ids) (l nil) (--cl-var-- nil)) (while (and (consp > --cl-var--) (progn (setq m ...) (consp --cl-var--))) (setq l (car > --cl-var--)) (setq --cl-var-- (cons (cons m l) --cl-var--)) (setq > --cl-var-- (cdr --cl-var--)) (setq --cl-var-- (cdr --cl-var--))) > (nreverse --cl-var--)) v)) (run-hook-with-args > 'eglot-server-initialized-hook server) (unwind-protect (condition-case > _quit (let ((retval (catch tag (jsonrpc-async-request server > :initialize ... :success-fn ... :timeout eglot-connect-timeout > :error-fn ... :timeout-fn ...) (cond ... ...)))) (cond ((consp retval) > (let* (...) (if ... ... ...))) ((null retval) (let nil (eglot--message > "Waiting in background for server `%s'" ...) nil)) (t (let nil > server)))) (quit (jsonrpc-shutdown server) (setq canceled 'quit))) > (setq tag nil))) > eglot--connect((c-mode c-ts-mode c++-mode c++-ts-mode objc-mode) > (transient . "/tmp/eglot-1.17/") eglot-lsp-server ("/usr/bin/clangd") > ("c" "c" "c++" "c++" "objc")) > eglot((c-mode c-ts-mode c++-mode c++-ts-mode objc-mode) (transient . > "/tmp/eglot-1.17/") eglot-lsp-server ("/usr/bin/clangd") ("c" "c" > "c++" "c++" "objc") t) > funcall-interactively(eglot (c-mode c-ts-mode c++-mode c++-ts-mode > objc-mode) (transient . "/tmp/eglot-1.17/") eglot-lsp-server > ("/usr/bin/clangd") ("c" "c" "c++" "c++" "objc") t) > command-execute(eglot record) > execute-extended-command(nil "eglot" "eglot") > funcall-interactively(execute-extended-command nil "eglot" "eglot") > command-execute(execute-extended-command) > > > >