From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 29 Dec 2020 02:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 45518@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.160920986615986 (code B ref -1); Tue, 29 Dec 2020 02:45:02 +0000 Received: (at submit) by debbugs.gnu.org; 29 Dec 2020 02:44:26 +0000 Received: from localhost ([127.0.0.1]:37295 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ku4zp-00049k-Pt for submit@debbugs.gnu.org; Mon, 28 Dec 2020 21:44:26 -0500 Received: from lists.gnu.org ([209.51.188.17]:47496) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ku3Xe-00042q-Nd for submit@debbugs.gnu.org; Mon, 28 Dec 2020 20:11:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40362) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ku3Xe-0007Na-HG for bug-gnu-emacs@gnu.org; Mon, 28 Dec 2020 20:11:14 -0500 Received: from mail-io1-xd35.google.com ([2607:f8b0:4864:20::d35]:38394) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ku3Xb-00037V-VS for bug-gnu-emacs@gnu.org; Mon, 28 Dec 2020 20:11:14 -0500 Received: by mail-io1-xd35.google.com with SMTP id y5so10897959iow.5 for ; Mon, 28 Dec 2020 17:11:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=MMr5AbcMJvZxz6fAPvEUBzxktEpFlmYiwE1ASk7cTqI=; b=teSwZlU00lGBD8A7zX97JP5Ht0iBAYszzsC2VSlME8R/XjEiBM5hjcDr8eqXsAc024 1XllR7BrTsZvc/mbhE3MJzU2NzWIM4YBTr+/sMetqe+NaaZORcQdLpF2GChSfDhdjk4M nU8lkwxiEpgy7rKmguVHp+QmQ9xp/t5TlJ5j2I6zqGnC+VhQU5mreCx+vqqtz3WUUSEx vaGBPR3cwcjDHfV5DJzbUcglaM1X/o9L5rJaZU3JPkohPBjRMIlQr6MlJnUscDwEjloK Ah1+d61bsjtcV1Tlp2IlHZsC1pcpALsnxreO2Zi63tzu9jZROlYOwUutWaPS8cVlBVG2 ZPPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=MMr5AbcMJvZxz6fAPvEUBzxktEpFlmYiwE1ASk7cTqI=; b=G3NulUNcHnfY08T3AQW1b5HPL1VsG0+7KNoEqcMZ4YXpkd/l1iyq0eLAzyABN4xM5j dNF/tX8MHkmDC44Rki7s/c8nhHtqLfzqF/t5pSIyds4AocgTpc48LkRXrvwz4tt/zxAS jcq12DgXBlU50KOflPUlC/SwKuW5aQRjx3oGAxQU4JxycQc5SGVMtRmvDr2anm48cQkX ztSQAPcp12gGDht4Jkr8sjWviiGbtHvKXsQid6CGv2St16pMb/F9Wpzgz3XeJqvk4yOT o5guDuFtzZ48It3zl7LaYppxITNLdsQz8dpzSR+ldBjAGRfXtHmTSy9zIucgAeGC375V 4zfg== X-Gm-Message-State: AOAM532Eh3n0SI62joV73F4VYhiSYstMnGneoxMKJIBNiTexsHzoJ9+Y KDKgcjrNWyN5/R+GmYmIDcdzlIa32Fp0C4qAYY/DJlT601U= X-Google-Smtp-Source: ABdhPJw3eL2pYdXlEmYq9uPU0AznJkpBIhF459hXD8gl7cGgR4iF4DPT59h72DhmD8uf3xjEnr7EbSawmYoic21OLFQ= X-Received: by 2002:a02:caac:: with SMTP id e12mr40317195jap.45.1609204269800; Mon, 28 Dec 2020 17:11:09 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 28 Dec 2020 17:10:58 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000df629005b7901058" Received-SPF: pass client-ip=2607:f8b0:4864:20::d35; envelope-from=dgbulk@gmail.com; helo=mail-io1-xd35.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Mailman-Approved-At: Mon, 28 Dec 2020 21:44:24 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --000000000000df629005b7901058 Content-Type: text/plain; charset="UTF-8" Using tramp, I had a remote cpp file open in a window. I pressed "C-c c", which invokes a function in my .emacs called compile-hereish, which (in this case) invokes the compile command with the remote directory containing the remote cpp. Compilation begins as expected. The cpp file contains a number of syntax errors. There is what I understand to be a longstanding Tramp bug such that, if a lot of outputs (syntax errors) are sent at high speed to the compile window, Tramp hangs. In emacs 26.2, Ctrl-G (usually ctrl-g three times) would interrupt the hung Tramp window, and indeed cause the errors to be displayed in the window as best as Tramp is able. In emacs 27.1, Ctrl-G does nothing in this "tramp-hung-while-compiling" situation. I also tried ctrl-c ctrl-c, but that also does nothing. It appears that the only way to kill the hung Tramp compile is to force-quit emacs as a whole at the OS level. Machine running emacs: MacBook Pro (2015), macos Big Sur v11.1. I am using emacs 27.1 installed via brew-cask on macos. On the Macbook: ssh -V OpenSSH_8.1p1, LibreSSL 2.7.3 Remote host for compile: Ubuntu Linux 20.04.1 LTS (GNU/Linux 5.4.0-54-generic x86_64) On remote host: ssh -V OpenSSH_8.2p1 Ubuntu-4ubuntu0.1, OpenSSL 1.1.1f 31 Mar 2020 Also on remote host: gcc --version gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. If I revert back to emacs 26.2 on the Macbook, ctrl-G once again works as expected in the event of a Tramp hang. I am attaching to the remote host using Tramp-ssh mode, but I also tried Tramp-scp and saw the same behaviour. My .emacs includes: (setq tramp-default-method "ssh") (setq tramp-chunksize 500) The following cpp file (on Ubuntu machine) is sufficient to generate a large number of syntax errors and hang Tramp, blocking ctrl-G (crashing emacs) in emacs 27.1 for me. // test.cpp DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( int validstuff(); int validstuff() { return(0); } // end test.cpp Thanks as always. D. Following was generated via: M-x report-emacs-bug In GNU Emacs 27.1 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 Version 10.14.6 (Build 18G95)) of 2020-08-11 built on builder10-14.porkrind.org Windowing system distributor 'Apple', version 10.3.2022 System Description: macOS 11.1 Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Package cl is deprecated Mark set Configured using: 'configure --with-ns '--enable-locallisppath=/Library/Application Support/Emacs/${version}/site-lisp:/Library/Application Support/Emacs/site-lisp' --with-modules' Configured features: NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS JSON PDUMPER Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: global-undo-tree-mode: t undo-tree-mode: t global-auto-complete-mode: t show-paren-mode: t delete-selection-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-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 buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: /Users/dgreatwood/.emacs.d/lisp/linum hides /Applications/Emacs.app/Contents/Resources/lisp/linum Features: (shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs text-property-search seq byte-opt bytecomp byte-compile cconv mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils linum easy-mmode time-date subr-x server persistent-todo special-scratch tango-theme advice undo-tree diff auto-complete-config auto-complete popup string-inflection paren desktop frameset unbound cl-macs cl gv delsel edmacro kmacro cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win 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 timer select scroll-bar mouse jit-lock font-lock syntax facemenu 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 loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads kqueue cocoa ns multi-tty make-network-process emacs) Memory information: ((conses 16 70462 8546) (symbols 48 8556 1) (strings 32 22334 1877) (string-bytes 1 713421) (vectors 16 12259) (vector-slots 8 156248 17226) (floats 8 39 36) (intervals 56 248 0) (buffers 1000 14)) --000000000000df629005b7901058 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Using tramp, I had a remote cpp file open in a window.
=
I pressed "C-c c", which invokes a function in my .emacs call= ed
compile-hereish, which (in this case) invokes the compile command wit= h
the remote directory containing the remote cpp.

Compilation beg= ins as expected.=C2=A0

The cpp file contains a number of= syntax errors. There is what I understand to be a longstanding Tramp bug s= uch that, if a lot of outputs (syntax errors) are sent at high speed to the= compile window, Tramp=C2=A0hangs.

In emacs 26= .2, Ctrl-G (usually ctrl-g three times) would interrupt the hung Tramp wind= ow, and indeed cause the errors to be displayed in the window as best as Tr= amp is able.

In emacs 27.1, Ctrl-G does nothing in= this "tramp-hung-while-compiling" situation. I also tried ctrl-c= ctrl-c, but that also does nothing. It appears that the only way to kill t= he hung Tramp compile is to force-quit emacs as a whole at the OS level.

Machine running emacs: MacBook Pro (2015), macos Big= Sur v11.1. I am using emacs 27.1 installed via brew-cask on macos.
On the Macbook: ssh -V
=C2=A0 =C2=A0 OpenSSH_8.1p1, LibreSSL 2.7.3<= div>
Remote host for compile: Ubuntu Linux=C2=A020.04.1 LTS (= GNU/Linux 5.4.0-54-generic x86_64)
On remote host: ssh -V=C2=A0 OpenSSH_8.2p1 Ubuntu-4ubuntu0.1, OpenSSL 1.1.1f =C2=A031 Mar 2020=
Also on remote=C2=A0host: gcc --version
gcc (Ubuntu 9.3= .0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, I= nc.
This is free software; see the source for copying conditions.=C2=A0 = There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PART= ICULAR PURPOSE.

If I revert back to emacs 26.2 on the Ma= cbook, ctrl-G once again works as expected in the event of a Tramp hang.

I am attaching to the remote host using Tramp-ssh mo= de, but I also tried Tramp-scp and saw the same behaviour. My .emacs includ= es:
(setq tramp-default-method "ssh")=C2=A0 =C2=A0
(= setq tramp-chunksize 500)

The following cpp fi= le (on Ubuntu machine) is sufficient to generate a large number of syntax e= rrors and hang Tramp, blocking ctrl-G (crashing emacs) in emacs 27.1 for me= .
// test.cpp
=C2=A0 DummyClass(
=C2=A0 = DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 Du= mmyClass(
=C2=A0 DummyClass(
=C2= =A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
int = validstuff();
int=C2=A0validstuff()
{
=C2= =A0 =C2=A0 return(0);
}
// end test.cpp

<= /div>
Thanks as always.
D.

Following was generated via: M-x report-emacs-bug

In GNU Emacs 27.1 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 = Version 10.14.6 (Build 18G95))
=C2=A0of 2020-08-11 built on builder10-14.porkrind.org
Windowing= system distributor 'Apple', version 10.3.2022
System Descriptio= n: =C2=A0macOS 11.1

Recent messages:
For information about GNU Em= acs and the GNU system, type C-h C-a.
Package cl is deprecated
Mark s= et

Configured using:
=C2=A0'configure --with-ns '--enable= -locallisppath=3D/Library/Application
=C2=A0Support/Emacs/${version}/sit= e-lisp:/Library/Application
=C2=A0Support/Emacs/site-lisp' --with-mo= dules'

Configured features:
NOTIFY KQUEUE ACL GNUTLS LIBXML2 = ZLIB TOOLKIT_SCROLL_BARS NS MODULES
THREADS JSON PDUMPER

Importan= t settings:
=C2=A0 value of $LANG: en_US.UTF-8
=C2=A0 locale-coding-s= ystem: utf-8-unix

Major mode: Fundamental

Minor modes in effe= ct:
=C2=A0 global-undo-tree-mode: t
=C2=A0 undo-tree-mode: t
=C2= =A0 global-auto-complete-mode: t
=C2=A0 show-paren-mode: t
=C2=A0 del= ete-selection-mode: t
=C2=A0 tooltip-mode: t
=C2=A0 global-eldoc-mode= : t
=C2=A0 electric-indent-mode: t
=C2=A0 mouse-wheel-mode: t
=C2= =A0 menu-bar-mode: t
=C2=A0 file-name-shadow-mode: t
=C2=A0 global-fo= nt-lock-mode: t
=C2=A0 font-lock-mode: t
=C2=A0 blink-cursor-mode: t<= br>=C2=A0 auto-composition-mode: t
=C2=A0 auto-encryption-mode: t
=C2= =A0 auto-compression-mode: t
=C2=A0 buffer-read-only: t
=C2=A0 column= -number-mode: t
=C2=A0 line-number-mode: t
=C2=A0 transient-mark-mode= : t

Load-path shadows:
/Users/dgreatwood/.emacs.d/lisp/linum hide= s /Applications/Emacs.app/Contents/Resources/lisp/linum

Features:(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
f= ormat-spec rfc822 mml easymenu mml-sec password-cache epa derived epg
ep= g-config gnus-util rmail rmail-loaddefs text-property-search seq
byte-op= t bytecomp byte-compile cconv mm-decode mm-bodies mm-encode
mail-parse r= fc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-dru= ms mm-util mail-prsvr mail-utils linum easy-mmode
time-date subr-x serve= r persistent-todo special-scratch tango-theme
advice undo-tree diff auto= -complete-config auto-complete popup
string-inflection paren desktop fra= meset unbound cl-macs cl gv delsel
edmacro kmacro cl-loaddefs cl-lib too= ltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel = term/ns-win ns-win
ucs-normalize mule-util term/common-win tool-bar dnd = fontset image
regexp-opt fringe tabulated-list replace newcomment text-m= ode elisp-mode
lisp-mode prog-mode register page tab-bar menu-bar rfn-es= hadow isearch
timer select scroll-bar mouse jit-lock font-lock syntax fa= cemenu
font-core term/tty-colors frame minibuffer cl-generic cham georgi= an
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
j= apanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
eth= iopic indian cyrillic chinese composite charscript charprop
case-table e= pa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice lo= addefs button faces cus-face macroexp files
text-properties overlay sha1= md5 base64 format env code-pages mule
custom widget hashtable-print-rea= dable backquote threads kqueue cocoa ns
multi-tty make-network-process e= macs)

Memory information:
((conses 16 70462 8546)
=C2=A0(symbo= ls 48 8556 1)
=C2=A0(strings 32 22334 1877)
=C2=A0(string-bytes 1 713= 421)
=C2=A0(vectors 16 12259)
=C2=A0(vector-slots 8 156248 17226)
= =C2=A0(floats 8 39 36)
=C2=A0(intervals 56 248 0)
=C2=A0(buffers 1000= 14))




<= br>



--000000000000df629005b7901058-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 30 Dec 2020 10:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.160932460017060 (code B ref 45518); Wed, 30 Dec 2020 10:37:01 +0000 Received: (at 45518) by debbugs.gnu.org; 30 Dec 2020 10:36:40 +0000 Received: from localhost ([127.0.0.1]:41833 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kuYqO-0004R6-8J for submit@debbugs.gnu.org; Wed, 30 Dec 2020 05:36:40 -0500 Received: from mout.gmx.net ([212.227.15.19]:45009) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kuYqM-0004Qt-2E for 45518@debbugs.gnu.org; Wed, 30 Dec 2020 05:36:38 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1609324591; bh=dhBp0o9m+tLWnYlJyARL0ManW542Mbs3orLondXPIA0=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=H/6tInYG6qQbAhVAzjpKTNzHeFDDZA9Ga7LNSMdyI4hIGY0VquV0PBGvBeEMW1tbV JP5FLvy5jbGqjEyOLtWWWXcO1kAk9+jORyBXcC8z4Q6YQ7R1b/KdodOyFWoQgb/dKU 2lhEwhQGk8iL+OdfluWgEoNtcDIdpg/WHnl+kQXs= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.46.32]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MEm6L-1konXY1eJ9-00GI64; Wed, 30 Dec 2020 11:36:31 +0100 From: Michael Albinus References: Date: Wed, 30 Dec 2020 11:36:30 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 28 Dec 2020 17:10:58 -0800") Message-ID: <87eej78tsh.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:ehOGfu9qbzZqhvvAjJlZQ+f4CBPplUGJsyw4u53NdZkXZwj0nM+ E+y/HL+aXCXXGfHf8eRdwfx9GL6Apw1b6cZ1ncGYD3t8mHkyJq9uj01eLbJdmEZz6XdHF02 acaWJC1f77Y+2sIN+eQsmw0iLTnKzmaIYCuBkRySnA34VoxK+QN3+GJ/Yg6o7z03e2b8o4v lZ8ZFtyraZDOX222hz56A== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:RlxS/qKSV1Y=:xBbQs3bS8JLiDvDW7TgFeP VeSlLkp/ZU6/FGOuNnkxJVr0Ek9adVE8gJv13p0vnBWgMLYnjyV0gS3+zDWhVx97mTg31jpWo QthV1w/WAjIAp+VMPa6maIlMUrzCuCx7g423RFyhimtHpZ4XmoSBaaEJPM2ZBb5+p7uqYkDRw JxXILDgUjIu7KWzZ1eyh4P+hQ2qGDn1HiJfymYM8Tn0oFsz7l51CHRbYY91yU1RKIz4C/IKJG siEy9kBP/Vlsen/UFMoW0feF4Yo69SsRxi1PB4stKUA7YbNe4o3WfOyYekGr9X/py6bmssBOw DskB+unmNEKbPwHizsIKb2i4pXeP7z0u2LTuc2/dKntIAoIVdFEOKx7Dv/hyb5PraZrUmA4Hs F1QKrEXdBbyz7LoZ6DK2TPfZKpPdpn0CR59W9AnQofsfIeEStAfN7YsHEbhWOaXXCpLbxwB0m 7YmN9YPhsMUoIWQmcVBMmNrSVEq4MKZUmjO/JhjKKpIVB3euDTlJJPyMePGQ4b7K25EXWITUY OrNG3XwN0n+l9dA6zrymdzUTyr1cPtgPDeraQzYgjx6BouVi5lUvQheYKqFMZU+Yeisd7bret d2LWzmHEY+zDhMkeFrBfJaYGeFdn56z/GnWYWTT2XJ3Z0BySM3B+kLNhuoMCGnySrAaNSOLIn Evharm3ooQ/bYNlTP9IHJP9B4h7MKJTiATqM+AbHKaur14oXNuLSmD+6s8dbw3RIYb3M+/RvU HMVYK/ZCJ6HrBEWIbGVyx1Q74fNKcqndwmEsT/pVwLE5hsKe5uh3wilQvr+Yc7s3cBAX3mktR jo+uaT32J0PjSm+5Zb1W8pxIefYw8QLzxR37udx+spJf55tj5tflkEAFBvDb+bbCOBVjTLJ7V g1AJk9xjwIDe+GqN4y/w== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: Hi Duncan, > In emacs 26.2, Ctrl-G (usually ctrl-g three times) would interrupt the > hung Tramp window, and indeed cause the errors to be displayed in the > window as best as Tramp is able. > > In emacs 27.1, Ctrl-G does nothing in this > "tramp-hung-while-compiling" situation. I also tried ctrl-c ctrl-c, > but that also does nothing. It appears that the only way to kill the > hung Tramp compile is to force-quit emacs as a whole at the OS level. Well, in this area several changes have been applied since Emacs 27.1 has been released. Could you, pls, try the Tramp ELPA version (2.5.0)? Even if it still blocks Emacs, there is a new option to write Tramp traces to file. This would help us to find the culprit, if still evident. > Thanks as always. > D. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 30 Dec 2020 22:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16093672602847 (code B ref 45518); Wed, 30 Dec 2020 22:28:01 +0000 Received: (at 45518) by debbugs.gnu.org; 30 Dec 2020 22:27:40 +0000 Received: from localhost ([127.0.0.1]:51364 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kujwR-0000jq-HL for submit@debbugs.gnu.org; Wed, 30 Dec 2020 17:27:40 -0500 Received: from mail-io1-f41.google.com ([209.85.166.41]:44007) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kuimy-0007LN-FB for 45518@debbugs.gnu.org; Wed, 30 Dec 2020 16:13:49 -0500 Received: by mail-io1-f41.google.com with SMTP id o6so15687522iob.10 for <45518@debbugs.gnu.org>; Wed, 30 Dec 2020 13:13:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=tUS4MZByuhWsKC3DbYPVoO32pwFfGaAnRzrQNU+HYTk=; b=YQrY2FDJli4cYbQugqWUuLubbT4JB/EbYRV2EH4HABLqB+sGM2AS0NPRBmE7cEPZpQ A+3fHB9yI11tSN1r4iZImmi603dLH33U5+hjnAA7y81ETShVHCfJ6sPfrfhGZwTnU9Kc iNN9Scn1ZBQvW7vPa9nYX7181Wskuy74stkQXgPwlhLF9CtPGA9GgWzMXOfsh2iabIo+ 1GUUMGnuumv/4aisy8Pe89+L20/gnKBHjcgPlVrIbgO6djZk9U5MWzyI1+F+VUScMTq+ Hz9gnHDlD014h480YczsTfzpZbRJaeuqwO2VgzCKVEv+nLq4Utib3iACisGCx6KWvPk3 j53A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=tUS4MZByuhWsKC3DbYPVoO32pwFfGaAnRzrQNU+HYTk=; b=Fg20sTrsUdHst9Ja5blC+PaR8CustxdMsrqn86jkiCplfAIM85upoItitnHMokxnXg rPqb4vci2Tx/JooOUNgLe+in8yyNIaqHgZoeQlTNW7U9549OT//q1vu8jTfpLYeSIuAh eq4FYbn6t/okORJoFw6UgybPew0iIGTe1Fyf+ibAGK9Nt9hZO373ixvWI5FSIZvsf4G2 T+U7FRzLH779kjuWIPssVrlvQZ//DfV55y7oWQirZ8eJ8qI1RFRGC1R4Gh3dxYofpSj6 Wy0VvspfrMIIc4nhaszNONwUgQJM5ImPN8Q134wnElzKslATZ7w2KixAp3WGgfJiFf/K T86w== X-Gm-Message-State: AOAM5304Y0sfPkq1SAC+bwwt+di5yw4BZuplBRTtqJTmdN/Nc43FyBmm wJseHq6OaQEWkXIjqK4u//R6iR5i9vZgaE//gCU= X-Google-Smtp-Source: ABdhPJzX3ZXYQAdAJ03+VFm+eMulc+JSmhqA64Z15FszxpEGJg8UbEm9J8kEeoD3ZlphlzU77UO73NSLPErZ3+KEhrw= X-Received: by 2002:a5d:9a8e:: with SMTP id c14mr45298669iom.178.1609362822826; Wed, 30 Dec 2020 13:13:42 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Wed, 30 Dec 2020 13:13:31 -0800 Message-ID: Content-Type: multipart/alternative; boundary="0000000000005e8d9005b7b4fb72" X-Spam-Score: 0.0 (/) X-Mailman-Approved-At: Wed, 30 Dec 2020 17:27:38 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000005e8d9005b7b4fb72 Content-Type: text/plain; charset="UTF-8" Hi Michael, On Wed, Dec 30, 2020 at 2:36 AM Michael Albinus > wrote: > Duncan Greatwood writes: > Hi Duncan, > > In emacs 26.2, Ctrl-G (usually ctrl-g three times) would interrupt the > > hung Tramp window, and indeed cause the errors to be displayed in the > > window as best as Tramp is able. > > > > In emacs 27.1, Ctrl-G does nothing in this > > "tramp-hung-while-compiling" situation. I also tried ctrl-c ctrl-c, > > but that also does nothing. It appears that the only way to kill the > > hung Tramp compile is to force-quit emacs as a whole at the OS level. > Well, in this area several changes have been applied since Emacs 27.1 > has been released. Could you, pls, try the Tramp ELPA version (2.5.0)? > [DG] I note in passing that in my emacs 27.1 build, I already have Tramp 2.5.0 installed as per: M-x list-packages ... tramp 2.5.0 available Nonetheless, I downloaded from this page: https://elpa.gnu.org/packages/tramp.html tramp-2.5.0.tar, 2020-Dec-29, 1.61 MiB I expanded the tar to a local directory, call it ~/.../tramp-2.5.0 I then added the following to my .emacs file: (add-to-list 'load-path (expand-file-name "~/.../tramp-2.5.0")) (require 'tramp) Happy news - with this addition to .emacs, pressing ctrl-g three times once again interrupts the hung Tramp window, and .emacs as a whole does not crash. I tried adding and removing the .emacs lines several times, and the matter produces perfectly: ctrl-gx3 always works when the .emacs lines are present, and never works when they are not in emacs 27.1. The only slight wrinkle I noticed with this newest version of tramp (vs. emacs 26.2 tramp) is that, after pressing ctrl-gx3, it feels I have to click around to another window and back in order to see the error output from the compile appear in the tramp compile window, wheres in emacs 26.2 the error output would start appearing in the tramp compile window as soon as ctrl-gx3 was pressed. No terrible hardship but JFYI. Is there anything I can do that would help diagnose / pinpoint or whatever? Either with the ctrl-gx3 matter, or indeed with the underlying hang in the tramp compile window which requires the use of ctrl-gx3. Best regards, Duncan > Even if it still blocks Emacs, there is a new option to write Tramp > traces to file. This would help us to find the culprit, if still > evident. > > Thanks as always. > > D. > Best regards, Michael. --0000000000005e8d9005b7b4fb72 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Michael,

On Wed, Dec 30, 2020 at 2:36 AM Michael Albinus <michael.albinus@gmx.de> wrote:
Dunc= an Greatwood <dgbulk@gmail.com&g= t; writes:
Hi Duncan,
> In emacs 26.2, Ctrl-G (usually ctrl-g thre= e times) would interrupt the
> hung Tramp window, and indeed cause th= e errors to be displayed in the
> window as best as Tramp is able.>
> In emacs 27.1, Ctrl-G does nothing in this
> "tram= p-hung-while-compiling" situation. I also tried ctrl-c ctrl-c,
>= but that also does nothing. It appears that the only way to kill the
&g= t; hung Tramp compile is to force-quit emacs as a whole at the OS level.Well, in this area several changes have been applied since Emacs 27.1
h= as been released. Could you, pls, try the Tramp ELPA version (2.5.0)?
[DG] I note in passing that in my emacs 27.1 build, I alrea= dy have Tramp 2.5.0 installed as per:
=C2=A0 =C2=A0 M-x list-pack= ages
=C2=A0 =C2=A0 ...
=C2=A0 =C2=A0=C2=A0=C2=A0 tramp = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A02.5.0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 available

Nonetheless, I downloaded from th= is page:=C2=A0https://= elpa.gnu.org/packages/tramp.html
=C2=A0 =C2=A0=C2=A0tramp-2.5= .0.tar, 2020-Dec-29, 1.61 MiB
I expanded the tar to a local direc= tory, call it ~/.../tramp-2.5.0

I then added the f= ollowing to my .emacs file:
=C2=A0 =C2=A0 (add-to-list 'load-= path (expand-file-name "~/.../tramp-2.5.0"))
=C2=A0 =C2=A0 (= require 'tramp)

Happy news - with this addition to .= emacs, pressing ctrl-g three times once again interrupts the hung Tramp win= dow, and .emacs as a whole does not crash.

I tried= adding and removing the .emacs lines several times, and the matter produce= s=C2=A0perfectly: ctrl-gx3 always works when the .emacs lines are present, = and never works=C2=A0when they are not in emacs 27.1.

<= div>The only slight wrinkle I noticed with this newest version of tramp (vs= . emacs 26.2 tramp) is that, after pressing ctrl-gx3, it feels I have to cl= ick around to another window and back in order to see the error output from= the compile appear in the tramp compile window, wheres in emacs 26.2 the e= rror output would start appearing in the tramp compile window as soon as ct= rl-gx3 was pressed. No terrible hardship but JFYI.

Is there anything I can do that would help diagnose / pinpoint or whatever= ? Either with the ctrl-gx3 matter, or indeed with the underlying hang in th= e tramp compile window which requires the use of=C2=A0ctrl-gx3.
<= br>
Best regards,
Duncan
=C2=A0
Even if it still blocks = Emacs, there is a new option to write Tramp
traces to file. This would h= elp us to find the culprit, if still
evident.
> Thanks as always.<= br>> D.
Best regards, Michael.
--0000000000005e8d9005b7b4fb72-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 31 Dec 2020 08:43:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.160940414530446 (code B ref 45518); Thu, 31 Dec 2020 08:43:02 +0000 Received: (at 45518) by debbugs.gnu.org; 31 Dec 2020 08:42:25 +0000 Received: from localhost ([127.0.0.1]:52685 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kutXM-0007v0-NL for submit@debbugs.gnu.org; Thu, 31 Dec 2020 03:42:25 -0500 Received: from mout.gmx.net ([212.227.15.18]:50135) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kutXL-0007un-EI for 45518@debbugs.gnu.org; Thu, 31 Dec 2020 03:42:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1609404136; bh=F2p7rLhgFN+Q/poa5C9yS1+p/XJPfjCCOdGpzrJbvYg=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=h3wO6/nh65JzkqTx+mpEhFmpQa08mk6P1ZUh+L8kUORVAhMsneg2rfXDmFQR0jjM3 lNo+Y81yjt+ybV7jI20QyVUQmN4PuNgCcZu0qGx8CCWNZbI2Xf3RtgyzapifH49MBo YhhH6AV9uM0N0A2daO9XfDDgpeELLGjdl6QMQzrc= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.52.148]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M8QS2-1kzJO42s9Q-004QER; Thu, 31 Dec 2020 09:42:16 +0100 From: Michael Albinus References: Date: Thu, 31 Dec 2020 09:42:15 +0100 In-Reply-To: (Duncan Greatwood's message of "Wed, 30 Dec 2020 13:13:31 -0800") Message-ID: <87y2he74ew.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:zLpPVd5KIX16SzBwo/PB55J1mLgqnGCjJtdymrc8eQQqLOu2FMF hJ5xVsI7vy+g7qh63iXlphwCBmTml8KcsskSw9xCC06pL+s6+S8C2sNX7M98ilu8s3P+eLo OzCUG7aGs3PhkIpCiaFWErpcCznqHRm8KSZCvE50xV9zoRhxRzY0/fmiUfjPawauBk/LCvu aqbJ0AY2tvNm31x7YK65Q== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:enk20hNY7+Q=:UtyzM8f0c2OtGwUSu7BEaQ +FljE4wkCFYXQbxjVys32KscmC2WVP2OP6QkEnmlqey7HpYVcQjZgNwmr3YIyypY5er1CcBxC naaBAqIICaDBYvZQX/czNbO8Od6ic9PtxU3JEASZvKDjHqdycORxGu2XxBYUWXrqQSGUAWitA tjX5UQQE0tpnn6oHW9VC2PhMSK4AAJj47u/tqE9WUX2RJhhbn5biI9AIIvb4AwICl3ryK/wdM YP93kuN9HmSpVazCDY2mEcpn+5+Eyg8KWPLwXh5HWUz8NfYZyQohotHwb5xIwShH4wtSiAT7s 2DJcvaX7afYWj2tRSGeln1mbXTauSeN+VHKJSr4kJZ5dWg/BQh3gaN2EHHo1Sy+fSD9/QlXWB M8ZZo0IWeUZbGnvvs1pQvHtEcR5vaxRHOIJtZTqY0zYnpHBn7AXoCmlj1wFPIe75Q2x3173Yy Othu7fWUWQhZbPlgM18oTsFP2qR/Z6aEPfaYUJ/KfZZ4cLVorHsABaJQX07cCUFmXu15arTIw Ad0yfW0RHzP+x8I3lDQ3j5JjXPyRA0wYIPZl1WDG+k8OxEYSvIydWlZkkEK4oXP2W1XJllBvZ mg6PLUML8HrWHzWdWStFC/VcuX3saQbTeOMM4GVSJPq9S2b1KnOtFoeM/K1mN6hprbG6bx3fl D/CVf8SHNau55RLr2QmWDEPkUFJAeWOcc+rdgteX0RsJIgvfTr1hQ6qUx+qkMLttW8UwnNGA1 dKDpVSgletPGTTAmfvu42wjVCgf3a7imrVBrXYaaiZXS14fHm1L76M19+ZGHwRVXdK+0ZOxy5 5VR4ibpNpdWbD8AOg9XkzRxa/zIvgWDh4QTIh7mE3NEaRFwMASmM2d/MOYtkZx+nCeua+Qr+Y 0xn+PqnKaIbzuHUbReEQ== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: > Hi Michael, Hi Duncan, > [DG] I note in passing that in my emacs 27.1 build, I already have > Tramp 2.5.0 installed as per: > M-x list-packages > ... > tramp 2.5.0 available Well, this doe NOT mean it is installed already. It is available in the package archive. > Nonetheless, I downloaded from this page: > https://elpa.gnu.org/packages/tramp.html > tramp-2.5.0.tar, 2020-Dec-29, 1.61 MiB > I expanded the tar to a local directory, call it ~/.../tramp-2.5.0 > > I then added the following to my .emacs file: > (add-to-list 'load-path (expand-file-name "~/.../tramp-2.5.0")) > (require 'tramp) That's one way to do it. The more natural way is "M-x package-install RET tramp". Or, in the *Packages* buffer, mark the package with "i", and install it via "x". > Happy news - with this addition to .emacs, pressing ctrl-g three times > once again interrupts the hung Tramp window, and .emacs as a whole > does not crash. > > I tried adding and removing the .emacs lines several times, and the > matter produces perfectly: ctrl-gx3 always works when the .emacs lines > are present, and never works when they are not in emacs 27.1. Great! > The only slight wrinkle I noticed with this newest version of tramp > (vs. emacs 26.2 tramp) is that, after pressing ctrl-gx3, it feels I > have to click around to another window and back in order to see the > error output from the compile appear in the tramp compile window, > wheres in emacs 26.2 the error output would start appearing in the > tramp compile window as soon as ctrl-gx3 was pressed. No terrible > hardship but JFYI. > > Is there anything I can do that would help diagnose / pinpoint or > whatever? Either with the ctrl-gx3 matter, or indeed with the > underlying hang in the tramp compile window which requires the use of > ctrl-gx3. I will try to reproduce it locally. Since I don't know where to start with debugging, I cant give you instructions for this yet. > Best regards, > Duncan Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 02 06:56:10 2021 Received: (at control) by debbugs.gnu.org; 2 Jan 2021 11:56:10 +0000 Received: from localhost ([127.0.0.1]:52634 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvfVx-0001Z4-Oj for submit@debbugs.gnu.org; Sat, 02 Jan 2021 06:56:09 -0500 Received: from mout.gmx.net ([212.227.15.18]:33757) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvfVr-0001YW-Og for control@debbugs.gnu.org; Sat, 02 Jan 2021 06:56:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1609588557; bh=8w6yY9XlV7jkLFwjBLhEQU2vbSwe3nY9m9WsQ940rwo=; h=X-UI-Sender-Class:Date:To:From:Subject; b=BuaTNBFWixpd1335Qbctq9M7m3DamUSTJ9RROYROlYVIDHi03QI4IB6nLb/1lw1no n1UwR6jAgsXv/PKzltyNPg/mej2oWTPsa7VDZEM1tGBqYrYMp9poY3W7HBHpAba57U RYp+Ofoo/r47EIgFZJpHb2bbqpbUP3zrFb3mhqCY= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.59.20]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MWAOW-1kTYed1S8Y-00XfdY for ; Sat, 02 Jan 2021 12:55:57 +0100 Date: Sat, 02 Jan 2021 12:55:56 +0100 Message-Id: <87turz4koj.fsf@gmx.de> To: control@debbugs.gnu.org From: Michael Albinus Subject: control message for bug #45518 X-Provags-ID: V03:K1:UXaMJo/uwQ7CrPJURtVoSqo4TKtr3TiIk9Qwag0+UFhk6e3ZzAF Aj3JT95BTVPKYjxkds8NAor5rfdT5ReG4KfJl3Annvzw1HdYPGZGk52bupOhrRrDFO9R2Ja 8ciQOwwqZg62yCamlJTihwBNgnXJ6Ty/uUnUkjnvabUzfslNTVknpeMyNBNtqRNJ+CcAoaA A30rN1LXgGljIlClUBvpw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:B1Ha7FVb4VY=:SqGyztIu/yu+Bc5mlHoKTf 6aM9GVcHz0FFimz9eNl9naHTb3nvNmPelZwBr5+sbb8yaT0QWeE35kiP/Q1ZnDx+tt+u/GndT LYl32GzP0xW0FpDkzOO1viuXDGp8gLhiCbWbCCvMu/gLihQo9ZB/TEYnkg5kX5ElKu/HVKRIt 2bgLHTkoZLrJkRO7KRcMj2TcRIBS31/62Gpv6bQmZqDT4HFsgEJZuPnrjT54HwSothjdrdxG9 E/FUAJjADBCwuwCi8f3eya2fTg3C0aUDdEZy8X5jhsoYv5BFM4z+LlGbeCnKtRLnHPbY0iJSM C8U+BA6+wyIUEvizfFJsWwoQ84+k0GK7lijDRnbT7BYLjDji3Mt0HPN/OQi2Fgok0FRweyf73 rQYN0tDtJGcD64fOMsiEGgmYBV0vZMOOAyOd3sRbxSDCJgxoRgAML0T6u9S9ac1hC0FK5fcCh ueBPaYCjEVZC1ofFLPMajbAPv5FacoDc/UwV+AIN9Df300wepBRRHu8YVSpDV9NUCC2TstGDd xnj+TiMU8sKaHSKzu9nuz0BOPhkJIqq4SC7gG58vSnuj23qwTxRMq2AKBDdN7DD+fAME1fAPA wC7sloDOovrTB+QuUXFv7Gx2CC/0B5iYP5Ho5xisEQDjkaadd2usaYaL61fuWBNuQbn7kcp/U GOmoefcyyuBZadKnA1OhIuOAvJXeToxtxYc2izV9s4jUWo0IVq2u58Ag44ndy2nNFxvjTjOQQ jTulq0lgEOfRIBWLO3lIIpGJz9TWC36Hx3/nfCuY/2vqo9oiKGuns8o9qq9TrIxsPsKhxU3ew 0HZbFNe59DMAQTRkziU2Xj8fYYFa5JphePBi1oltKa+XqQM1ebyjuYtkbpfgRlR6ZICZr3/MZ LjBhdTbsI0sUEWV114EA== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) fixed 45518 28.1 quit From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Jan 2021 10:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.160966965628614 (code B ref 45518); Sun, 03 Jan 2021 10:28:01 +0000 Received: (at 45518) by debbugs.gnu.org; 3 Jan 2021 10:27:36 +0000 Received: from localhost ([127.0.0.1]:33334 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kw0bi-0007RJ-IP for submit@debbugs.gnu.org; Sun, 03 Jan 2021 05:27:36 -0500 Received: from mout.gmx.net ([212.227.15.19]:44325) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kw0bh-0007R6-8T for 45518@debbugs.gnu.org; Sun, 03 Jan 2021 05:27:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1609669642; bh=iQHl5hBFnW5NLZnEwYDBphnyFIdQWqrO3TKt+1a19WE=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=Lq1NY8A0TQCnokh/6ERllrkoOdeDwPhhfMvD0HARc/FvgS4nxt5CsfvzA34y+Fbsa NvekBDDsL/6hP3SWQBdQgLx3jp3Xvs9ArPaqekO9OSN+L6LCYqOC308GUoYwSWhWOR Yyts1YEoJw8+j7zlAdYE9Wnu8N0BK6VIW6W9hR+k= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([213.220.159.97]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MTiU3-1kYj8J2165-00U4zr; Sun, 03 Jan 2021 11:27:22 +0100 From: Michael Albinus References: <87y2he74ew.fsf@gmx.de> Date: Sun, 03 Jan 2021 11:27:21 +0100 In-Reply-To: <87y2he74ew.fsf@gmx.de> (Michael Albinus's message of "Thu, 31 Dec 2020 09:42:15 +0100") Message-ID: <87ft3i48om.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:zy0pxFD1xFYJelJl5+I4aWhy3YawMQXSf3wUvTDB51XcvVs4hsZ JIlEv4uRUFtXy7ueiUzpZw4ywx8vLDYlEetYV+BnZuoJaOwPRg43LCxoBYAK88R82fLLHLf l9XP7GqPpLe3Hs5U0SIFZp0NNNg/5yMkTDdYAKj1+QGnJL4xwoRdpJNJPKUeI7PwNfyw53Q 5epR3OLrOun3WuvJHfU0g== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:vXXXUNQJXv8=:P9hq95KZRuW+bhf/0Sr46h nojx2P5CZLhEvE7mh5Hoq4IXbySttWjiTAGdR+9wL2K9SaCaclvo479c0v7hhyHty3FxaHUJo HHaIN1pMFtyRUd/f57a49sOJrKC4yy7sIkL7ttocJ6fqvzVMX9YCFjg03Fu6L0iN4oB6B+Ygg YM+Dp/SkUPdfnpIYPPXx1hEBXtdZzFzh+k21lqYIVCJikcaGELrsey9dnqklg31kXa615TfAK USjS/wEJ9ZUG4II41aDCw8BOj3of29Ba4yNTNxqCAKUA+QppnDT2+116Ebmrp9klMH3EpZ0Rn ug3O3AsLl28XMKZzRCMALyNeWN6nZT+2pCyjBG2tagiVSrB1lmZ/ywLlrquIx8ISMZLjORhNt YO/834FAqQTwuqIt6fOLiVIJrCDVP+FdtTWNFIYuScOg8QaUGmo0Bl/mBfXKCx21pKvv4dO3t X2FCKBDcFEF2idwD7UOJ0eQP8XDQRLkYwEKVNdITEeFg2/1WBRN7xu5lw6DQcTePKwA5AGiDX 4UuP240Up4MfROAnnTwrtyfbBB9Yw6Cm0nCvojT5M6k9cKIMjizxruQ1AAtoBjNqzsvgB7rn+ p1HT+l3idmWhSC1S9A8l7z3J5amodNfkHJJkxMubQwKETvHTJGEFAdl57M1DnPw+j3UFUGTti yDtOscZj6EyXtDYNO11UAcbdC8C5PTGPPFUAj5sPwUoVt3/SSBp8wbHrBlDZZEeAvxy0q5t1M HIVT/UVgfGhDMFZXamtXrx7B8l04PgMjQryXu49BUe2oEqoPciMTsnkuXpERtaITdIk/tK7H6 2Qf8PBC3+ZovCebgHUNzObP3RepATfu0Ygl5CKupzsOEnV+V/O4/0zIyqLCpjE6n3qjq7maN6 rRgygKvkggO3h0nD0b/w== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Michael Albinus writes: Hi Duncan, >> Is there anything I can do that would help diagnose / pinpoint or >> whatever? Either with the ctrl-gx3 matter, or indeed with the >> underlying hang in the tramp compile window which requires the use of >> ctrl-gx3. > > I will try to reproduce it locally. Since I don't know where to start > with debugging, I cant give you instructions for this yet. I've tried to trigger this error, but I cannot. Calling "M-x compile", and invoking "gcc test.cpp" then, returns immediately with one error message: --8<---------------cut here---------------start------------->8--- -*- mode: compilation; default-directory: "/ssh:detlef:/home/albinus/tmp/" = -*- Compilation started at Sun Jan 3 11:23:16 gcc test.cpp test.cpp:2:13: error: expected constructor, destructor, or type conversion = before =E2=80=98(=E2=80=99 token 2 | DummyClass( | ^ Compilation exited abnormally with code 1 at Sun Jan 3 11:23:16 --8<---------------cut here---------------end--------------->8--- What does it need to hang Emacs/Tramp, compiling this file? >> Best regards, >> Duncan Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Jan 2021 19:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16097020567430 (code B ref 45518); Sun, 03 Jan 2021 19:28:01 +0000 Received: (at 45518) by debbugs.gnu.org; 3 Jan 2021 19:27:36 +0000 Received: from localhost ([127.0.0.1]:38637 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kw92N-0001vl-Kp for submit@debbugs.gnu.org; Sun, 03 Jan 2021 14:27:36 -0500 Received: from mail-il1-f181.google.com ([209.85.166.181]:36203) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kw92L-0001vY-OM for 45518@debbugs.gnu.org; Sun, 03 Jan 2021 14:27:34 -0500 Received: by mail-il1-f181.google.com with SMTP id u12so23411069ilv.3 for <45518@debbugs.gnu.org>; Sun, 03 Jan 2021 11:27:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=fZ9EKKl+6r+2XjGYv6bfMpXNphMFSNi/rWEANOlNToE=; b=YucPgykMfwlt9KVzvgANDzSPsTK6Q87pnhOZq9X0rc7l/I/K2iCtsN1r+Z6SJlPXdb KBLcnk2EEG1ACcpTw7SCHKUp+3iOB6OeaMCpZ0HrtJe5RlwjbfrY820RqanZbJashtVO gfhUKvM4RwaDuSyrBaVynMUZy5UrlRgJOKaAildDqyL8JvX0piqeHCZUe+eUz7V9Ue4a 7iESx+3geNBVWDBj8PAtmS20FluLPU9Bim4QEri4//e8BPy6ezlJamkthZna48+K/sPM +F+n9KR9HGgjZMq8hFJbLBc/Atnumo0/AXQEkF+9R1haJoA0LVURHnWbuKvkRdH5q3qu LkGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=fZ9EKKl+6r+2XjGYv6bfMpXNphMFSNi/rWEANOlNToE=; b=g9LreI3ITcUs8VExM1ZEnSK7w8JR8II7AWx9kzINwrvsMBtj45fnkUELPym6c6K32/ BEA5dZtaDhrQTjs3p8YtItCntYv6YQwiTgWwllN1PnatwyvK31tVzQ1NDXHxYUsnvdsI ZKmS2IAmCxrqJCJOwPChVp7X5MUoBY0hw1ObxfLa0MTOLU5clQTl51FNJNxj0kr0Mekr l/hKMzKph1oKPPY3G5yZiloIjMX0xJBQLemr/TxvI3l0WNsZB346KrNevnuvoqNz0OQ4 uEWyO4CNcTeliYgpgJnBEKqig2+8s2gc81xRaKK9wamgGCRe8myMM7U/q5Ilrbkh3Juv 9ztA== X-Gm-Message-State: AOAM531ZFjbcEuBVTtSHtamrJr+EltM3wIamg2BAy7LMGzCfLWvbulhZ xL0s55wR1wVv0jhdLaomKFxN27QZK/A4vTBuaE4= X-Google-Smtp-Source: ABdhPJzE4Lfdx5VMaAhXKsF9rPOmK+M8stmBh8pj9CbN/Zh+euSUjnQ9V7EArcqpBQQRLev3vd2093KfQtfhIUWYC00= X-Received: by 2002:a92:180b:: with SMTP id 11mr68989482ily.30.1609702048162; Sun, 03 Jan 2021 11:27:28 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Sun, 3 Jan 2021 11:27:17 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000c667bc05b803f62b" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000c667bc05b803f62b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Firstly, my apologies. The test.cpp I supplied was an attempt at a quick simplification, and as you said it doesn't produce "enough" syntax errors actually. I am pasting below a test.cpp that I have verified on my setup does hang the tramp window. I'm afraid that there is another complication for reproducability. I cannot get the issue to reproduce when I do "M-x compile" then invoking "gcc test.cpp". It appears to reproduce only when doing "make" on a larger / more complex project containing test.cpp. This is true even when test.cpp is the first file that compiles in the project upon "make". I attempted to make a small autotools project containing test.cpp, but even that doesn't seem to reproduce the tramp hang. Only by including test.cpp in a large preexisting project does the hang occur, at least for me. I would suggest that you take a favorite large C++ autotools project, add test.cpp to the source tree and Makefile.am, and see if the hang reproduces for you. For your reference, I am also pasting the output from the hung tramp window when I added test.cpp to a library within one of my own larger projects. Regards, D. =3D=3D=3D=3D=3D=3D=3D Hung Tramp Window =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -*- mode: compilation; default-directory: "/ssh:username@TWR1HM:/home/username/Dropbox/progs/thisprog/sbshared/src/" -*- Compilation started at Sun Jan 3 11:02:36 make -k make all-am make[1]: Entering directory '/home/username/Dropbox/progs/thisprog/sbshared/src' /bin/bash ../libtool --tag=3DCXX --mode=3Dcompile g++ -DHAVE_CONFIG_H -I= . -std=3Dc++11 -Wall -Werror -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wuninitialized -Winit-self -Wcast-align -Wfloat-equal -Wformat=3D2 -Wno-psabi -I/usr/include/libxml2 -I../../../kilo -I../../../rapidxml -g3 -Og -DDEBUG=3D1 -MT test.lo -MD -MP -MF .deps/test.Tpo -c -o test.lo test.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -std=3Dc++11 -Wall -Werror -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wuninitialized -Winit-self -Wcast-align -Wfloat-equal -Wformat=3D2 -Wno-psabi -I/usr/include/libxml2 -I../../../kil= o -I../../../rapidxml -g3 -Og -DDEBUG=3D1 -MT test.lo -MD -MP -MF .deps/test.Tpo -c test.cpp -fPIC -DPIC -o .libs/test.o =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D // test.cpp - for lots of syntax errors #include #include #include #include class A1 { int f1(); int f2(); int f3(); int f4(); int f5(); int f6(); int f7(); int f8(); int f9(); }; class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { class Nested { A1 m1; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; class A2 { std::shared_ptr a1ptr; A2() {A1 a1; a1ptr =3D &a1;} }; #define AN_BODY \ A1 x1; \ A1 x2; \ std::string s1(x1); \ std::string s2(x2); \ Nested n1; \ const std::vector v1(1, a1); \ const std::vector v1(1, n1); \ std::vector * v1_cptr(&v1); \ return(s1+s2); int A1::f1() { AN_BODY; } int A1::f2() { AN_BODY; } int A1::f3() { AN_BODY; } int A1::f4() { AN_BODY; } int A1::f5() { AN_BODY; } int A1::f6() { AN_BODY; } int A1::f7() { AN_BODY; } int A1::f8() { AN_BODY; } int A1::f9() { AN_BODY; } int A1::f10() { AN_BODY; } int main(int argc, char* argv[]) { AN_BODY; } // end test.cpp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D On Sun, Jan 3, 2021 at 2:27 AM Michael Albinus wrote: > Michael Albinus writes: > > Hi Duncan, > > >> Is there anything I can do that would help diagnose / pinpoint or > >> whatever? Either with the ctrl-gx3 matter, or indeed with the > >> underlying hang in the tramp compile window which requires the use of > >> ctrl-gx3. > > > > I will try to reproduce it locally. Since I don't know where to start > > with debugging, I cant give you instructions for this yet. > > I've tried to trigger this error, but I cannot. Calling "M-x compile", > and invoking "gcc test.cpp" then, returns immediately with one error > message: > > --8<---------------cut here---------------start------------->8--- > -*- mode: compilation; default-directory: "/ssh:detlef:/home/albinus/tmp/= " > -*- > Compilation started at Sun Jan 3 11:23:16 > > gcc test.cpp > test.cpp:2:13: error: expected constructor, destructor, or type conversio= n > before =E2=80=98(=E2=80=99 token > 2 | DummyClass( > | ^ > > Compilation exited abnormally with code 1 at Sun Jan 3 11:23:16 > --8<---------------cut here---------------end--------------->8--- > > What does it need to hang Emacs/Tramp, compiling this file? > > >> Best regards, > >> Duncan > > Best regards, Michael. --000000000000c667bc05b803f62b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Firstly, my apologies. The test.= cpp I supplied was an attempt at a quick simplification, and as you said it= doesn't produce "enough" syntax errors actually.

I am pasting below = a test.cpp that I have verified on my setup does hang the tramp window.

I'm afr= aid that there is another complication for reproducability. I cannot get th= e issue to reproduce when I do "M-x compile" then invoking "= gcc test.cpp". It appears to reproduce only when doing "make"= ; on a larger / more complex project containing test.cpp. This is true even= when test.cpp is the first file that compiles in the project upon "ma= ke".

I attempted to make a small autotools project containing test.cpp, but ev= en that doesn't seem to reproduce the tramp hang. Only by including tes= t.cpp in a large preexisting project does the hang occur, at least for me.<= /div>

I would = suggest that you take a favorite large C++ autotools project, add test.cpp = to the source tree and Makefile.am, and see if the hang reproduces for you.=

For you= r reference, I am also pasting the output from the hung tramp window when I= added test.cpp to a library within one of my own larger projects.

Regards,
D.
=3D=3D=3D=3D=3D= =3D=3D Hung Tramp Window =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

-*- mode: compilation; defa= ult-directory: "/ssh:username@TWR1HM:/home/username/Dropbox/progs/this= prog/sbshared/src/" -*-
Compilation started at Sun Jan =C2=A03 11:0= 2:36

make -k
make =C2=A0all-am
make[1]: Entering directory &#= 39;/home/username/Dropbox/progs/thisprog/sbshared/src'
/bin/bash ../= libtool =C2=A0--tag=3DCXX =C2=A0 --mode=3Dcompile g++ -DHAVE_CONFIG_H -I. = =C2=A0 =C2=A0-std=3Dc++11 -Wall -Werror -Wclobbered -Wempty-body -Wignored-= qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-limits -Wunin= itialized -Winit-self -Wcast-align -Wfloat-equal -Wformat=3D2 -Wno-psabi = =C2=A0-I/usr/include/libxml2 -I../../../kilo =C2=A0-I../../../rapidxml =C2= =A0-g3 -Og -DDEBUG=3D1 -MT test.lo -MD -MP -MF .deps/test.Tpo -c -o test.lo= test.cpp
libtool: compile: =C2=A0g++ -DHAVE_CONFIG_H -I. -std=3Dc++11 -= Wall -Werror -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-= initializers -Wsign-compare -Wtype-limits -Wuninitialized -Winit-self -Wcas= t-align -Wfloat-equal -Wformat=3D2 -Wno-psabi -I/usr/include/libxml2 -I../.= ./../kilo -I../../../rapidxml -g3 -Og -DDEBUG=3D1 -MT test.lo -MD -MP -MF .= deps/test.Tpo -c test.cpp =C2=A0-fPIC -DPIC -o .libs/test.o

=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D
// test.cpp - for lots of syntax e= rrors

#include <mutex>
#include <string>
#include = <vector>
#include <memory> =C2=A0 =C2=A0 =C2=A0 =C2=A0
= =C2=A0
class A1
{
=C2=A0 =C2=A0 int f1();
=C2=A0 =C2=A0 int f2(= );
=C2=A0 =C2=A0 int f3();
=C2=A0 =C2=A0 int f4();
=C2=A0 =C2=A0 i= nt f5();
=C2=A0 =C2=A0 int f6();
=C2=A0 =C2=A0 int f7();
=C2=A0 = =C2=A0 int f8();
=C2=A0 =C2=A0 int f9();
};

class Nested
{<= br>class Nested
{
class Nested
{
class Nested
{
class Nes= ted
{
class Nested
{
class Nested
{
class Nested
{
= class Nested
{
class Nested
{
class Nested
{
class Nested=
{
class Nested
{
class Nested
{
class Nested
{
cla= ss Nested
{
class Nested
{
class Nested
{
class Nested{
class Nested
{
class Nested
{
class Nested
{
class = Nested
{
=C2=A0 =C2=A0 A1 m1;
};
};
};
};
};
};
= };
};
};
};
};
};
};
};
};
};
};
};
};<= br>};
};
};
};


class A2
{
=C2=A0 =C2=A0 std::shar= ed_ptr<A1> a1ptr;
=C2=A0 =C2=A0 A2() {A1 a1; a1ptr =3D &a1;}};

#define AN_BODY =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0\
=C2=A0 = =C2=A0 A1 x1; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 \
=C2=A0 = =C2=A0 A1 x2; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 \
=C2=A0 = =C2=A0 std::string s1(x1); =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0\
=C2=A0 =C2=A0 std::string s2(x2); =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0\
Nested n1; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0\
const std::vector<std::string> v1(1, a1); =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 \
const std::vector<std::string> v1(1, n1= ); =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 \
std::vector<std::string> * v1= _cptr(&v1); =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0\
return(s1+s2);
=
int A1::f1()
{
=C2=A0 =C2=A0 AN_BODY;
}

int A1::f2(){
=C2=A0 =C2=A0 AN_BODY;
}

int A1::f3()
{
=C2=A0 =C2=A0= AN_BODY;
}

int A1::f4()
{
=C2=A0 =C2=A0 AN_BODY;
}
<= br>int A1::f5()
{
=C2=A0 =C2=A0 AN_BODY;
}

int A1::f6()
= {
=C2=A0 =C2=A0 AN_BODY;
}

int A1::f7()
{
=C2=A0 =C2=A0 = AN_BODY;
}

int A1::f8()
{
=C2=A0 =C2=A0 AN_BODY;
}
int A1::f9()
{
=C2=A0 =C2=A0 AN_BODY;
}

int A1::f10()
= {
=C2=A0 =C2=A0 AN_BODY;
}


int main(int argc, char* argv[]= )
{
=C2=A0 =C2=A0 AN_BODY;
}
// end test.cpp

=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D
On Sun, Jan 3, 2021 at 2:27 AM Michael Albinus <michael.albinus@gmx.de> wrote:
Michael Albinus <michael.albinus@gmx.de= > writes:

Hi Duncan,

>> Is there anything I can do that would help diagnose / pinpoint or<= br> >> whatever? Either with the ctrl-gx3 matter, or indeed with the
>> underlying hang in the tramp compile window which requires the use= of
>> ctrl-gx3.
>
> I will try to reproduce it locally. Since I don't know where to st= art
> with debugging, I cant give you instructions for this yet.

I've tried to trigger this error, but I cannot. Calling "M-x compi= le",
and invoking "gcc test.cpp" then, returns immediately with one er= ror
message:

--8<---------------cut here---------------start------------->8---
-*- mode: compilation; default-directory: "/ssh:detlef:/home/albinus/t= mp/" -*-
Compilation started at Sun Jan=C2=A0 3 11:23:16

gcc test.cpp
test.cpp:2:13: error: expected constructor, destructor, or type conversion = before =E2=80=98(=E2=80=99 token
=C2=A0 =C2=A0 2 |=C2=A0 =C2=A0DummyClass(
=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^

Compilation exited abnormally with code 1 at Sun Jan=C2=A0 3 11:23:16
--8<---------------cut here---------------end--------------->8---

What does it need to hang Emacs/Tramp, compiling this file?

>> Best regards,
>> Duncan

Best regards, Michael.
--000000000000c667bc05b803f62b-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 06 Jan 2021 13:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.160994027316758 (code B ref 45518); Wed, 06 Jan 2021 13:38:01 +0000 Received: (at 45518) by debbugs.gnu.org; 6 Jan 2021 13:37:53 +0000 Received: from localhost ([127.0.0.1]:43818 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kx90b-0004ME-FN for submit@debbugs.gnu.org; Wed, 06 Jan 2021 08:37:53 -0500 Received: from mout.gmx.net ([212.227.17.20]:37547) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kx90Z-0004M1-RY for 45518@debbugs.gnu.org; Wed, 06 Jan 2021 08:37:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1609940265; bh=2p2rRL3IMZR8wXv19Gl0P4ZropiC5JwyhLMAopoaec0=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=WUZh2fWmyn2YdpBQGsKK30WTQ1vbzTWKgXI92eXoKQgVJLSpXzsz8fuBHtSeddvsp 4s0bjoVbotjj+i+41DzdEkZA96rn/UprZhZtWq6f60y5+ZRZmcD7L/1a29PEkD+TE7 pmk16wMdmoQFAnP1wvGWXWQX7lALOZBiuHQ04Gks= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.91.249.16]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M5wPb-1kvC8a2t5P-007Wnd; Wed, 06 Jan 2021 14:37:44 +0100 From: Michael Albinus References: Date: Wed, 06 Jan 2021 14:37:36 +0100 In-Reply-To: (Duncan Greatwood's message of "Sun, 3 Jan 2021 11:27:17 -0800") Message-ID: <87zh1m425b.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:oxsulVOXi9C6hXAPhggWIUa3gUIs42A7V1ZnNZxRA0oFr+TZlIl olXTfWgKIKDLsEq94FWtjvUKsZuK5f1iomIUqj7Kli6lWGBSLRRQ4HAI2vluYwHtGjj34G7 1fV1l2DHuiShOoeIrXkWpsTpUziCbTk0Tf7ZlzGMlIqG7wRlki/ZIhqKJE7sAknKGnnXQbH Yv89KurQabnunBmc+8mRw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:9ZcAYbjDCP8=:2bTPAlUDyH+EZtm+4WtvWo 8M5ppwSTr/if4uHN++ZRUJ/NJ7y9jiaAoocHT94EPwzVsW/qwaGMzkauarAEMBHzfNip7vYDD XjQbuYzgRmwNSqGvuMyXu8ljHuMK16v6n8PXICvKPuMLAXbHYRD4QNyhWOBuEZ4VK1eaE/Rz2 gVmWb6/OU701OyoTXhbgLbSRp0lKpRCDMqk/TQ9kWlTnpB3yhrDntYEy7nfYpv9br+tEe7Frr 1Y91jzolLwCjD7nus9FaKAfS+6HlY5ASQ2yfzrpR8wf3abJoutI3XE9ugACYfZZiT/e3mZu2H hfIjNctCCDRaRo/M0qwCBQj8PxZNaVcJCR2P+/TkUtAFYwq9n61wfdVrhm1Shs8W546sLPgXd Ys65SLjYk/aA8E9W8OUqtoxJC88OaDtwr1tHHgepuLXcLUWS4njfHRLrKq/KkTiReXotvo/NP 7sfpFmdCWA9qrL3vKK+okgN6JyQ8LVsyOA83d+/+E/dz46el34plgphstXVa1sQkQdxuNYGB3 9aaSHJumbGvoqHm9pKTaU38S/zV5i3fa5Jl4K2ETqbpgXseqQ+yUmKcT54FviVg4DgAgT2d+/ 8t+cGqs9+/M4TCD637H6mS1acJlGFSS/usGf9w1VqE5kyrWqiIdxP6M3IbotFs8nx3sqQwOSr cg2vLfBtXIu2kQppbtMTdrbGWhVtNJAG6kqJC6TcQdP72zKcGZ7JsoN0J2hJuvKcbjEF0gWKx 4asw9g3x9C0HOJFlNHSfMTDjsgulWeoPCAzZoYGs1z1kI9owX3fx50kMYjB4ONy68xtSvq7We tZ3X4QLrQA95muG4NAjkbWyr8k4iQKELbqCOxwu3Dp6atWi4Ef4714nmlK0eERB8kC0vcm83U /ADh0P/zPWAaK3AhwXaKowmCw/ZSEez4YPJrHVYM4= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" --=-=-= Content-Type: text/plain Duncan Greatwood writes: Hi Duncan, > I would suggest that you take a favorite large C++ autotools project, > add test.cpp to the source tree and Makefile.am, and see if the hang > reproduces for you. I don't work with C++, so I haven't. > For your reference, I am also pasting the output from the hung tramp > window when I added test.cpp to a library within one of my own larger > projects. I tried to mimic that, but it still just shows all errors, and no hung window. Tested with recent Tramp 2.5.0 and all Emacs versions 26, 27, 28. See appended compile output. > Regards, > D. Best regards, Michael. --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename=*compilation* Content-Transfer-Encoding: quoted-printable -*- mode: compilation; default-directory: "/ssh:detlef:/home/albinus/tmp/" = -*- Compilation started at Wed Jan 6 14:06:15 g++ -DHAVE_CONFIG_H -I. -std=3Dc++11 -Wall -Werror -Wclobbered -Wempty-body= -Wignored-qualifiers -Wmissing-field-initializers -Wsign-compare -Wtype-li= mits -Wuninitialized -Winit-self -Wcast-align -Wfloat-equal -Wformat=3D2 -W= no-psabi -I/usr/include/libxml2 -I../../../kilo -I../../../rapidxml -g3 -Og= -DDEBUG=3D1 -MT test.lo -MD -MP -MF -c test.cpp -fPIC -DPIC -o .libs/test= .o test.cpp:23:7: error: =E2=80=98Nested::Nested=E2=80=99 has the same name as= the class in which it is declared 23 | class Nested | ^~~~~~ test.cpp: In constructor =E2=80=98A2::A2()=E2=80=99: test.cpp:95:27: error: no match for =E2=80=98operator=3D=E2=80=99 (operand = types are =E2=80=98std::shared_ptr=E2=80=99 and =E2=80=98A1*=E2=80=99) 95 | A2() {A1 a1; a1ptr =3D &a1;} | ^~ In file included from /usr/include/c++/10/memory:84, from test.cpp:6: /usr/include/c++/10/bits/shared_ptr.h:358:19: note: candidate: =E2=80=98std= ::shared_ptr<_Tp>& std::shared_ptr<_Tp>::operator=3D(const std::shared_ptr<= _Tp>&) [with _Tp =3D A1]=E2=80=99 358 | shared_ptr& operator=3D(const shared_ptr&) noexcept =3D defau= lt; | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:358:29: note: no known conversion f= or argument 1 from =E2=80=98A1*=E2=80=99 to =E2=80=98const std::shared_ptr<= A1>&=E2=80=99 358 | shared_ptr& operator=3D(const shared_ptr&) noexcept =3D defau= lt; | ^~~~~~~~~~~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:362:2: note: candidate: =E2=80=98temp= late std::shared_ptr<_Tp>::_Assignable&> std::shared_ptr<_Tp>::operator=3D(const std::shared_ptr<_Yp>&) [with _Y= p =3D _Yp; _Tp =3D A1]=E2=80=99 362 | operator=3D(const shared_ptr<_Yp>& __r) noexcept | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:362:2: note: template argument dedu= ction/substitution failed: test.cpp:95:27: note: mismatched types =E2=80=98const std::shared_ptr<_Tp= >=E2=80=99 and =E2=80=98A1*=E2=80=99 95 | A2() {A1 a1; a1ptr =3D &a1;} | ^~ In file included from /usr/include/c++/10/memory:84, from test.cpp:6: /usr/include/c++/10/bits/shared_ptr.h:373:2: note: candidate: =E2=80=98temp= late std::shared_ptr<_Tp>::_Assignable > std:= :shared_ptr<_Tp>::operator=3D(std::auto_ptr<_Up>&&) [with _Yp =3D _Yp; _Tp = =3D A1]=E2=80=99 373 | operator=3D(auto_ptr<_Yp>&& __r) | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:373:2: note: template argument dedu= ction/substitution failed: test.cpp:95:27: note: mismatched types =E2=80=98std::auto_ptr<_Up>=E2=80= =99 and =E2=80=98A1*=E2=80=99 95 | A2() {A1 a1; a1ptr =3D &a1;} | ^~ In file included from /usr/include/c++/10/memory:84, from test.cpp:6: /usr/include/c++/10/bits/shared_ptr.h:382:7: note: candidate: =E2=80=98std:= :shared_ptr<_Tp>& std::shared_ptr<_Tp>::operator=3D(std::shared_ptr<_Tp>&&)= [with _Tp =3D A1]=E2=80=99 382 | operator=3D(shared_ptr&& __r) noexcept | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:382:30: note: no known conversion f= or argument 1 from =E2=80=98A1*=E2=80=99 to =E2=80=98std::shared_ptr&&= =E2=80=99 382 | operator=3D(shared_ptr&& __r) noexcept | ~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/shared_ptr.h:390:2: note: candidate: =E2=80=98temp= late std::shared_ptr<_Tp>::_Assignable > st= d::shared_ptr<_Tp>::operator=3D(std::shared_ptr<_Yp>&&) [with _Yp =3D _Yp; = _Tp =3D A1]=E2=80=99 390 | operator=3D(shared_ptr<_Yp>&& __r) noexcept | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:390:2: note: template argument dedu= ction/substitution failed: test.cpp:95:27: note: mismatched types =E2=80=98std::shared_ptr<_Tp>=E2= =80=99 and =E2=80=98A1*=E2=80=99 95 | A2() {A1 a1; a1ptr =3D &a1;} | ^~ In file included from /usr/include/c++/10/memory:84, from test.cpp:6: /usr/include/c++/10/bits/shared_ptr.h:398:2: note: candidate: =E2=80=98temp= late std::shared_ptr<_Tp>::_Assignable > std::shared_ptr<_Tp>::operator=3D(std::unique_ptr<_Up, _Ep>&= &) [with _Yp =3D _Yp; _Del =3D _Del; _Tp =3D A1]=E2=80=99 398 | operator=3D(unique_ptr<_Yp, _Del>&& __r) | ^~~~~~~~ /usr/include/c++/10/bits/shared_ptr.h:398:2: note: template argument dedu= ction/substitution failed: test.cpp:95:27: note: mismatched types =E2=80=98std::unique_ptr<_Tp, _Dp>= =E2=80=99 and =E2=80=98A1*=E2=80=99 95 | A2() {A1 a1; a1ptr =3D &a1;} | ^~ test.cpp: At global scope: test.cpp:105:38: error: =E2=80=98a1=E2=80=99 was not declared in this scope= ; did you mean =E2=80=98v1=E2=80=99? 105 | const std::vector v1(1, a1); | ^~ | v1 test.cpp:107:32: error: redefinition of =E2=80=98const std::vector > v1=E2=80=99 107 | const std::vector v1(1, n1); | ^~ test.cpp:105:32: note: =E2=80=98const std::vector > v1=E2=80=99 previously declared here 105 | const std::vector v1(1, a1); | ^~ test.cpp:107:38: error: =E2=80=98n1=E2=80=99 was not declared in this scope= ; did you mean =E2=80=98v1=E2=80=99? 107 | const std::vector v1(1, n1); | ^~ | v1 test.cpp:109:36: error: invalid conversion from =E2=80=98const std::vector<= std::__cxx11::basic_string >*=E2=80=99 to =E2=80=98std::vector >*=E2=80=99 [-fpermissive] 109 | std::vector * v1_cptr(&v1); | ^~~ | | | const std::vector >* test.cpp:111:1: error: expected unqualified-id before =E2=80=98return=E2=80= =99 111 | return(s1+s2); | ^~~~~~ test.cpp: In member function =E2=80=98int A1::f1()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:115:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 115 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:115:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 115 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:115:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 115 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:115:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 115 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:115:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 115 | AN_BODY; | ^~~~~~~ test.cpp:116:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 116 | } | ^ test.cpp: In member function =E2=80=98int A1::f2()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:120:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 120 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:120:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 120 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:120:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 120 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:120:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 120 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:120:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 120 | AN_BODY; | ^~~~~~~ test.cpp:121:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 121 | } | ^ test.cpp: In member function =E2=80=98int A1::f3()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:125:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 125 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:125:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 125 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:125:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 125 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:125:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 125 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:125:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 125 | AN_BODY; | ^~~~~~~ test.cpp:126:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 126 | } | ^ test.cpp: In member function =E2=80=98int A1::f4()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:130:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 130 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:130:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 130 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:130:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 130 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:130:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 130 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:130:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 130 | AN_BODY; | ^~~~~~~ test.cpp:131:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 131 | } | ^ test.cpp: In member function =E2=80=98int A1::f5()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:135:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 135 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:135:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 135 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:135:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 135 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:135:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 135 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:135:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 135 | AN_BODY; | ^~~~~~~ test.cpp:136:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 136 | } | ^ test.cpp: In member function =E2=80=98int A1::f6()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:140:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 140 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:140:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 140 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:140:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 140 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:140:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 140 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:140:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 140 | AN_BODY; | ^~~~~~~ test.cpp:141:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 141 | } | ^ test.cpp: In member function =E2=80=98int A1::f7()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:145:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 145 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:145:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 145 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:145:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 145 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:145:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 145 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:145:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 145 | AN_BODY; | ^~~~~~~ test.cpp:146:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 146 | } | ^ test.cpp: In member function =E2=80=98int A1::f8()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:150:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 150 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:150:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 150 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:150:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 150 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:150:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 150 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:150:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 150 | AN_BODY; | ^~~~~~~ test.cpp:151:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 151 | } | ^ test.cpp: In member function =E2=80=98int A1::f9()=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:155:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 155 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:155:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 155 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:155:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 155 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:155:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 155 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:155:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 155 | AN_BODY; | ^~~~~~~ test.cpp:156:1: error: no return statement in function returning non-void [= -Werror=3Dreturn-type] 156 | } | ^ test.cpp: At global scope: test.cpp:158:5: error: no declaration matches =E2=80=98int A1::f10()=E2=80= =99 158 | int A1::f10() | ^~ test.cpp:158:5: note: no functions named =E2=80=98int A1::f10()=E2=80=99 test.cpp:8:7: note: =E2=80=98class A1=E2=80=99 defined here 8 | class A1 | ^~ test.cpp: In function =E2=80=98int main(int, char**)=E2=80=99: test.cpp:101:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 101 | std::string s1(x1); \ | ^ test.cpp:165:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 165 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:101:22: note: candidate expects 3 arguments, 1 provided 101 | std::string s1(x1); \ | ^ test.cpp:165:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 165 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:102:22: error: no matching function for call to =E2=80=98std::__cx= x11::basic_string::basic_string(A1&)=E2=80=99 102 | std::string s2(x2); \ | ^ test.cpp:165:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 165 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:625:9: note: candidate: =E2=80=98te= mplate std::__cxx11::basic_string<_CharT, _Tra= its, _Alloc>::basic_string(_InputIterator, _InputIterator, const _Alloc&) [= with _InputIterator =3D _InputIterator; =3D ; _CharT =3D char; _Traits =3D std::char_traits; _A= lloc =3D std::allocator]=E2=80=99 625 | basic_string(_InputIterator __beg, _InputIterator __end, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:625:9: note: template argument de= duction/substitution failed: test.cpp:102:22: note: candidate expects 3 arguments, 1 provided 102 | std::string s2(x2); \ | ^ test.cpp:165:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 165 | AN_BODY; | ^~~~~~~ In file included from /usr/include/c++/10/string:55, from /usr/include/c++/10/stdexcept:39, from /usr/include/c++/10/system_error:41, from /usr/include/c++/10/mutex:42, from test.cpp:3: /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&, const _Alloc&) [with _CharT =3D= char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]= =E2=80=99 587 | basic_string(basic_string&& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:587:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _Alloc&) [with _Char= T =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 583 | basic_string(const basic_string& __str, const _Alloc& __a) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:583:7: note: candidate expects 2 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:579:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::initia= lizer_list<_Tp>, const _Alloc&) [with _CharT =3D char; _Traits =3D std::cha= r_traits; _Alloc =3D std::allocator]=E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:579:45: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::initializer_list= =E2=80=99 579 | basic_string(initializer_list<_CharT> __l, const _Alloc& __a = =3D _Alloc()) | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:552:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:552:35: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98std::__cxx11::basic_s= tring&&=E2=80=99 552 | basic_string(basic_string&& __str) noexcept | ~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx1= 1::basic_string<_CharT, _Traits, _Alloc>::size_type, _CharT, const _Alloc&)= [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std:= :allocator; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size= _type =3D long unsigned int]=E2=80=99 540 | basic_string(size_type __n, _CharT __c, const _Alloc& __a =3D= _Alloc()) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:540:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:525:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, const _Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:525:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const char*=E2=80=99 525 | basic_string(const _CharT* __s, const _Alloc& __a =3D _Alloc(= )) | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Char= T*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type, const _= Alloc&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc = =3D std::allocator; std::__cxx11::basic_string<_CharT, _Traits, _Allo= c>::size_type =3D long unsigned int]=E2=80=99 510 | basic_string(const _CharT* __s, size_type __n, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:510:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char; _Traits = =3D std::char_traits; _Alloc =3D std::allocator; std::__cxx11::= basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2= =80=99 492 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:492:7: note: candidate expects 4 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, std::__cxx11::basic_string<_CharT, _T= raits, _Alloc>::size_type) [with _CharT =3D char; _Traits =3D std::char_tra= its; _Alloc =3D std::allocator; std::__cxx11::basic_string<_Cha= rT, _Traits, _Alloc>::size_type =3D long unsigned int]=E2=80=99 476 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:476:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&, std::__cxx11::basic_string= <_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT =3D char;= _Traits =3D std::char_traits; _Alloc =3D std::allocator; std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type =3D long unsigned= int]=E2=80=99 461 | basic_string(const basic_string& __str, size_type __pos, | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:461:7: note: candidate expects 3 = arguments, 1 provided /usr/include/c++/10/bits/basic_string.h:448:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::= __cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT =3D char; _Tr= aits =3D std::char_traits; _Alloc =3D std::allocator]=E2=80=99 448 | basic_string(const basic_string& __str) | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:448:40: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::__cxx11::b= asic_string&=E2=80=99 448 | basic_string(const basic_string& __str) | ~~~~~~~~~~~~~~~~~~~~^~~~~ /usr/include/c++/10/bits/basic_string.h:440:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(const _Allo= c&) [with _CharT =3D char; _Traits =3D std::char_traits; _Alloc =3D s= td::allocator]=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:440:34: note: no known conversion= for argument 1 from =E2=80=98A1=E2=80=99 to =E2=80=98const std::allocator<= char>&=E2=80=99 440 | basic_string(const _Alloc& __a) _GLIBCXX_NOEXCEPT | ~~~~~~~~~~~~~~^~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate: =E2=80=98st= d::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string() [with _Ch= arT =3D char; _Traits =3D std::char_traits; _Alloc =3D std::allocator= ]=E2=80=99 431 | basic_string() | ^~~~~~~~~~~~ /usr/include/c++/10/bits/basic_string.h:431:7: note: candidate expects 0 = arguments, 1 provided test.cpp:103:8: error: unused variable =E2=80=98n1=E2=80=99 [-Werror=3Dunus= ed-variable] 103 | Nested n1; | ^~ test.cpp:165:5: note: in expansion of macro =E2=80=98AN_BODY=E2=80=99 165 | AN_BODY; | ^~~~~~~ cc1plus: all warnings being treated as errors Compilation exited abnormally with code 1 at Wed Jan 6 14:06:17 --=-=-=-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 06 Jan 2021 22:56:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.160997370223688 (code B ref 45518); Wed, 06 Jan 2021 22:56:01 +0000 Received: (at 45518) by debbugs.gnu.org; 6 Jan 2021 22:55:02 +0000 Received: from localhost ([127.0.0.1]:45858 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kxHhl-00069k-70 for submit@debbugs.gnu.org; Wed, 06 Jan 2021 17:55:02 -0500 Received: from mail-io1-f51.google.com ([209.85.166.51]:34318) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kxHhg-00069K-0k for 45518@debbugs.gnu.org; Wed, 06 Jan 2021 17:55:00 -0500 Received: by mail-io1-f51.google.com with SMTP id i18so4344263ioa.1 for <45518@debbugs.gnu.org>; Wed, 06 Jan 2021 14:54:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=vNeQvSe9ZoyrADnz30OIQU8VB+yb7nWOazVWqvod9p0=; b=hE0KT9A0FKYfZw7j5uEyJy3rCHWiR5d/dcPlVEEMUW7648abyLQBaWD4zbDOjPf+d1 ab8c+1Fx1FUPGw4t0VZ5UpMy+rgq3w6ZZRIjyT3oFpnhVZDSENAkHxCtVrmLG3BEK1Dh 07Pi8Swg8TASbint78vYnhGBh+lGrQjSgaRiY8+c/kZu6x30IfSXMerhITbQon02aPOJ pY6oniDF0q55DOzZOqWgFVCeB/5FZnSgbJyRwEBxk7xP7lRLUrvw61IejkDivw9PHg7J OyLFcDq6D1aM2ZKtTc9YMi20PZdbTTgVc3cVx5/ZH2Y+c1vP6IGwZcG4vf6nLziZinxM CRSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=vNeQvSe9ZoyrADnz30OIQU8VB+yb7nWOazVWqvod9p0=; b=FEtkNJXffUg5yEKhBNDm5lFGzmroCh6TMTwwamos4mLjYy/6NY9FXthGphaG1TXfvo Ppe5X3p/FFmdlXkMAa/i0j7gFZ+wR7M6Rh0M5c4BGI1yEnm9UN2VKo2PVUJv2iKQexMn VKmeJGyj3r/+lqxCLwLU0Fu1ddsytRCYnOuYRIaZ2XmpgTCTeHmnEA0aToaq1SAeauPF DTE8tBN9FWNkxZmN8oz3+XdwoiZVdADEyYLTVsoMzCOpopggga2FLX9lnGJk8UZmsnTP b3NVb+g/zgVVGNVv4rHf2wXS0r79vXmYsaR/YZbFo/Ujy18lqSnZ8aeDfqm8nCJ2AUxh 1QBg== X-Gm-Message-State: AOAM533EM90nOfQ7rm7SHL2B1R07Z04Gcf2cYKRHibNqwBdyuSESjp8d Ln05qLGKCnfveZlIEIg5wrS1HZ5hYuUDDoJev60= X-Google-Smtp-Source: ABdhPJwozahb5LtH9uzF1JuMtJCn1T5ZxLhXzR+WnnPPg6+rE2a8SKhiY/SSlD8+2agoBEgO0eIU4YAjv8VKg6MsyNo= X-Received: by 2002:a02:3213:: with SMTP id j19mr5536805jaa.79.1609973690328; Wed, 06 Jan 2021 14:54:50 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Wed, 6 Jan 2021 14:54:39 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000e8e98a05b843350d" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000e8e98a05b843350d Content-Type: text/plain; charset="UTF-8" Michael - On Wed, Jan 6, 2021 at 5:37 AM Michael Albinus wrote: > Duncan Greatwood writes: > > Hi Duncan, > > > I would suggest that you take a favorite large C++ autotools project, > > add test.cpp to the source tree and Makefile.am, and see if the hang > > reproduces for you. > > I don't work with C++, so I haven't. > [DG] Oh, no worries. Let me try and give a more explicit recipe. This is what I did: Download the autotools "hello world" program, and modify it as follows. Go to https://github.com/shanecelis/amhello (or *many* other places), and download the "hello world" code (click Code button on the github page, choose "Download zip" for simplicity). Expand the zip file, and cd into amhello-master directory. This is on a linux machine, an ubuntu machine in my case. Open configure.ac in a text editor. You'll see a section headed: # Checks for programs. We need to add AC_PROG_CXX and AM_PROG_AR, so this section will look like: # Checks for programs. AC_PROG_CC AC_PROG_CXX AM_PROG_AR AC_PROG_LIBTOOL Save configure.ac, and exit the text editor. Copy my test.cpp file into the src subdirectory of amhello-master. Open src/Makefile.am in a text editor. Added test.cpp to the sources line, so that line looks like: hello_SOURCES = main.c test.cpp Save src/Makefile.am and exit the editor. I presume you already have the autotools toolset installed, but if not, install them. sudo apt-get install -y autotools-dev autoconf Now at the shell command line (*not* in emacs) on the target linux machine, in the amhello-master directory: autoreconf --install ./configure make You should see the many syntax errors of test.cpp spewing out in the shell. Now *in gui emacs*, from a mac machine using Tramp, open amhello-master/src/test.cpp remotely (using tramp) on the remote linux machine. With that remote test.cpp open, In emacs, do M-compile Use the compile command: make -k Tramp window hangs As you noted prior, if you use compile command "gcc test.cpp", tramp does not hang. Only if you use compile command "make" does it hang. I was using my macbook laptop for the GUI-emacs-with-tramp, and ubuntu for the target linux machine. I was using emacs 26.2 gui-mode, but no reason to suppose it varies with other emacs versions. I did try it with a Linux laptop, running emacs-gui (26.3) and tramp to connect to the remote Linux host. However, in that case the issue did *not* reproduce for me, at least using this method. Perhaps emacs/tramp must be running from a mac for the issue to show up. Hope this helps. Thanks once more. Duncan > > > For your reference, I am also pasting the output from the hung tramp > > window when I added test.cpp to a library within one of my own larger > > projects. > > I tried to mimic that, but it still just shows all errors, and no hung > window. Tested with recent Tramp 2.5.0 and all Emacs versions 26, 27, > 28. See appended compile output. > > > Regards, > > D. > > Best regards, Michael. --000000000000e8e98a05b843350d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Michael -

On Wed, Jan 6, 202= 1 at 5:37 AM Michael Albinus <= michael.albinus@gmx.de> wrote:
Duncan Greatwood <dgbulk@gmail.com> writes:

Hi Duncan,

> I would suggest that you take a favorite large C++ autotools project,<= br> > add test.cpp to the source tree and Makefile.am, and see if the hang > reproduces for you.

I don't work with C++, so I haven't.
[DG] Oh, = no worries. Let me try and give a more explicit recipe.

This is what I did:

Download the autotools &= quot;hello world" program, and modify it as follows.

Go to=C2=A0https:= //github.com/shanecelis/amhello (or *many* other places), and download = the "hello world" code (click Code button on the github page, cho= ose "Download zip" for simplicity).

Expa= nd the zip file, and cd into=C2=A0amhello-master directory. This is on a li= nux machine, an ubuntu machine in my case.

Open configure.ac in a text editor. You'll= see a section headed:
=C2=A0 =C2=A0=C2=A0# Checks for programs.<= /div>
We need to add AC_PROG_CXX and AM_PROG_AR, so this section will l= ook like:
=C2=A0 =C2=A0 # Checks for programs. =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0
=C2=A0 =C2=A0 AC_PROG_CC
=C2= =A0 =C2=A0 AC_PROG_CXX
=C2=A0 =C2=A0 AM_PROG_AR
=C2=A0 =C2=A0 AC_PROG= _LIBTOOL


Open src/Makefile.am in a text editor.


=C2=A0 =C2=A0 make

You should see the many syntax errors of test.cpp spe= wing out in the shell.

Now *in gui emacs*, from a = mac machine using Tramp, open=C2=A0amhello-master/src/test.cpp remotely (us= ing tramp) on the remote linux machine.
With that remote test.cpp= open, In emacs, do=C2=A0
=C2=A0 =C2=A0 M-compile
=C2= =A0 =C2=A0 Use the compile command: make -k

Tramp = window hangs

As you noted prior, if you use compil= e command "gcc test.cpp", tramp does not hang. Only if you use co= mpile command "make" does it hang.

I was= using my macbook laptop for the GUI-emacs-with-tramp, and ubuntu for the t= arget linux machine. I was using emacs 26.2 gui-mode, but no reason to supp= ose it varies with other emacs versions.

I did try= it with a Linux laptop, running emacs-gui (26.3) and tramp to connect to t= he remote Linux host. However, in that case the issue did *not* reproduce f= or me, at least using this method. Perhaps emacs/tramp must be running from= a mac for the issue to show up.

Hope this helps.<= /div>
Thanks once more.
Duncan

=C2= =A0

> For your reference, I am also pasting the output from the hung tramp > window when I added test.cpp to a library within one of my own larger<= br> > projects.

I tried to mimic that, but it still just shows all errors, and no hung
window. Tested with recent Tramp 2.5.0 and all Emacs versions 26, 27,
28. See appended compile output.

> Regards,
> D.

Best regards, Michael.
--000000000000e8e98a05b843350d-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Jan 2021 10:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161036271629745 (code B ref 45518); Mon, 11 Jan 2021 10:59:02 +0000 Received: (at 45518) by debbugs.gnu.org; 11 Jan 2021 10:58:36 +0000 Received: from localhost ([127.0.0.1]:55826 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kyuuC-0007jg-9s for submit@debbugs.gnu.org; Mon, 11 Jan 2021 05:58:36 -0500 Received: from mout.gmx.net ([212.227.15.15]:39563) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kyuu9-0007jN-Mk for 45518@debbugs.gnu.org; Mon, 11 Jan 2021 05:58:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1610362706; bh=eGR42kZgjHBAM1pE37EMvOKbvlydKpoS1SfVKYk8aS4=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=SaTI6Gps4fLHJ6lnDk/eWpfSuLfhOyj8kPVxMnkNfAFrkGOlcw7ldM450EXwzKYgl ZRvN72GcpVKsinuwIgnSpTCB6p9nFLS+V1Af5T12JY8QKg4b71YY94XsLP2ChcjqPy zK2QKMqAVaCY0U4v9bKln4rfxdEBhnp+Uo3KAb3I= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([213.220.151.157]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mk0JW-1kEoag2DEW-00kNiT; Mon, 11 Jan 2021 11:58:26 +0100 From: Michael Albinus References: Date: Mon, 11 Jan 2021 11:58:25 +0100 In-Reply-To: (Duncan Greatwood's message of "Wed, 6 Jan 2021 14:54:39 -0800") Message-ID: <87v9c368q6.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:KfFkid90XyxffwUNtLb/4P7FHP3la6g0m+VlwsPW+GCQumq5mQA waJDpFovuQXi9qqrXF9rmLtJayGGtQLklDNPXBrGw5ewDQtWyc8XY+ItqBsckrTDZ7m+gku 9QbpghnyL7aXcg/cg+v7G/vER/4vDBTmEUBc9Bt3R+NVQY1Mu5LLZL192sVqbIWxv/dJFxD KBm8QyYoFFhf5LuzjgCPQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:3ya+dP0D6Es=:wYCM0hsW40scaF9QjhlLxA fbYbYDdqYkSWnFOlcHLLK4B8OtMEqMU1GD/KcHxMD5clwIN7I3vnr1/Xs1m9QDiQZlPRzr+lu UA+pYxgOgvFLhgFieniT26FQocH9iu5Mciz22SmeijDfAcQPo687qx6fYYR57nQ/uh3xvpwcR 6+NPQcbd2qkbjziVyUsryLosDiMB3nkLbQ7GrtyDCoO5ZU6trGrbSEAhp3VO+dy/ayGmHuL0B TblTPrVtccTIYVnTK6YLyCpi+Q25pag4i+iCP7Y5GUlmlMx4GoZGe3Gyc/Gm4TTPJ3/UxNYHB MvQAwezpORrgj0VZy0OmmyKGBDY918tTajbZAs/Nb0qWITQK30OKzLfXrmpewub2hdu0YJPnZ qcSV6H5hII9l9v+1MhI4rWypvT/B3nQQQwkaS5LL82j71xHxwrL81Q/RHMjHcGWzZmewyKt5Y di9jJGz1YVJ/nnXq5BmQ/Jk5CNU9b695CyABqNULiI7MC/n9gvDaN7ZBKRaraqbuwRlSgdnFB +MF6yUEJvxzYB1iISpG/vAlh9M7QWEgVMjgYGkLmj+rGPxP9mVMCiZQ7riucvsTJNAjvCOUa2 daUBW1HRWhk4GRRDBB+lcvcZZgD8dwNDK8ROtgfofstRg/XkcVCl3NvMl2rFIjbAv3M5m162r MNJ13CTI9qLfDopQP5euRWX4msQql1qjFbjwwjYTpgWVqXTYHLK6iDLPtfcr0Xl0ezSw0juhq /lRq39DgYUcTSerDxzENlJy6Mh7PCe6EoQmiH+oHTxjofeMwXnm6umvxqhhpAr4N3sSQg2O9W eq9ZySEHgxTdXF2zi6kO02EStKD7fLBXJj9NF4Eoji/dINR2eDe1S52xwdFFtjFEL9WyQfPVq RTg/ykKRfRhYNe5BM3Uw== Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Duncan Greatwood writes: > Michael - Hi Duncan, > This is what I did: Thanks for the recipe. Today, I found the time to apply. > Now *in gui emacs*, from a mac machine using Tramp, open > amhello-master/src/test.cpp remotely (using tramp) on the remote linux > machine. > With that remote test.cpp open, In emacs, do > M-compile > Use the compile command: make -k > > Tramp window hangs > > I was using my macbook laptop for the GUI-emacs-with-tramp, and ubuntu > for the target linux machine. I was using emacs 26.2 gui-mode, but no > reason to suppose it varies with other emacs versions. > > I did try it with a Linux laptop, running emacs-gui (26.3) and tramp > to connect to the remote Linux host. However, in that case the issue > did *not* reproduce for me, at least using this method. Perhaps > emacs/tramp must be running from a mac for the issue to show up. Well my local machine running Emacs is Fedora 33. And, as expected, make -= k didn't hang :-( Since I have no macOS machine, I fear I cannot debug the problem. > Hope this helps. > Thanks once more. > Duncan Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Jan 2021 16:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161038396729563 (code B ref 45518); Mon, 11 Jan 2021 16:53:01 +0000 Received: (at 45518) by debbugs.gnu.org; 11 Jan 2021 16:52:47 +0000 Received: from localhost ([127.0.0.1]:58125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kz0Qx-0007gl-FO for submit@debbugs.gnu.org; Mon, 11 Jan 2021 11:52:47 -0500 Received: from mail-il1-f181.google.com ([209.85.166.181]:41821) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kz0Qu-0007gW-AE for 45518@debbugs.gnu.org; Mon, 11 Jan 2021 11:52:45 -0500 Received: by mail-il1-f181.google.com with SMTP id w17so173578ilj.8 for <45518@debbugs.gnu.org>; Mon, 11 Jan 2021 08:52:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=PJ4wAsyyyyRc2LfBvoEL/jaVbiHrCEqn1vul/fTxwS0=; b=STZePJyUSCmkHytIXE8Y8dTUa6KVoQsvdBOexKq5DjAZPpZvntt8p/bqryA3C175dN BjmVRqeqFVHVN7uYkZoV1yIxvPr/UJG6Z8w5Q12edTy+CCUXlSkkuILOnOMu00aveEg7 /TVXMkMwTllk5hgVtCe3LhAxFEE8xgLsYaOQmItEJXktgXFN9+U2KM9w3V66OZb2TbGx SGnGQlZNgSinNbRGH3XhyLL2KyNORPr2YOVitW5ZQFpRP4FfLu2bG2fCbMbykue0c7d8 1DUtQsOXNsexzRKW75sMrOlMD5HIMRCEn7P4auPBZR9+oxQ7nAHtdTMipS6JTFXBi/T7 UIrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=PJ4wAsyyyyRc2LfBvoEL/jaVbiHrCEqn1vul/fTxwS0=; b=pmFWzAN5b0hVUWhGxZYLzVRboLDL8uNUVahkNDYRJIhvSeOzBFw8aSd3psJYtxuNCH B53coR/hkh0QB99LVn8LKbJN9l6td420BNWrMGZ23eXlW7WauEWVy9VR0Ok3A0+oZ6rd D8qGLe8KGi+ieKOlExP6N9uQAhILYCpPzBGnCSUfIDqoFK596amnrbxghrAakwdafV53 d2McZgTSYxSItMjwZDzHqCWmIiMvEBJgDMlyRjqqgyqRea35YVAGVq/RNfRr5jcnEcVg Xz5IB4+x+Y0gudQgxEaWz+J9WuVGKUDxDQ25dRwDiYe2COd4WXXi1+9lNHgNUWmBDubg BCsg== X-Gm-Message-State: AOAM532K71pXgWoEyjq9Nm8cyEU0GwzYHNHWwmrUxnyEf2lAh9hYFD/b vMgF8pd9R4Pd0/6xSG/29KLD2N+S/gLGkwuW2uM= X-Google-Smtp-Source: ABdhPJzvnBo7XenJMbuIJu1JI0Jt3zAYBQ6v7qypohoF0XggXNj+Y7nVpNX8LFUPy7Ogy/rQ2LvmNVNYHuUItR2eyUI= X-Received: by 2002:a92:180b:: with SMTP id 11mr86813ily.30.1610383958713; Mon, 11 Jan 2021 08:52:38 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 11 Jan 2021 08:52:27 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000cfab9705b8a2bbf9" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000cfab9705b8a2bbf9 Content-Type: text/plain; charset="UTF-8" Hi Michael - Thanks for trying. Is there a way for me to capture any trace, call-stack or similar when the emacs window is in the tramp-hung state? I could share that back to you, if practical. Alternatively, if you had time and could spend the few $s (it's "pay as you go"), you could try from a Mac on Amazon. https://aws.amazon.com/ec2/instance-types/mac/ Finally, presuming we can't fix the underlying issue on mac, do you know approximately when the version of tramp that fixes the "Ctrl-G x3 Fails to Interrupt Hung Tramp" issue will make it to release? The December 29th version I tried coupled with emacs 27.1 seemed to fix the ctrl-g issue but otherwise was quite inclined to crash-and-exit emacs. I know the tramp version I tried is an alpha so no problem, just wondering when it may reach general release? Regards, Duncan. --000000000000cfab9705b8a2bbf9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Michael -

Thanks for trying.

Is there a way for me to capture any trace, call-stack or= similar when the emacs window is in the tramp-hung state? I could share th= at back to you, if practical.


--000000000000cfab9705b8a2bbf9-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Jan 2021 17:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16103877903185 (code B ref 45518); Mon, 11 Jan 2021 17:57:01 +0000 Received: (at 45518) by debbugs.gnu.org; 11 Jan 2021 17:56:30 +0000 Received: from localhost ([127.0.0.1]:58174 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kz1Qc-0000pJ-8a for submit@debbugs.gnu.org; Mon, 11 Jan 2021 12:56:30 -0500 Received: from mout.gmx.net ([212.227.15.15]:34897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kz1QW-0000p1-VF for 45518@debbugs.gnu.org; Mon, 11 Jan 2021 12:56:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1610387778; bh=pSHRVZBkkA6zU/Om1yaMZvFtaPiUr4LJ92zgXq7ikkA=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=hvZ7dcGzJY5e3/MaEQAN84kNtjBLmVOUFy9cNRMjWw33/bHAg5qsB+Rd5QIedWQyW U76c/Ve0J1UGsQzVh5UOd8pAILQ6qB1ceYvmM7E/MhtUgq2HfyVaul0dou2c2kWFWL W6VfObIy2yWqoVMKtWKvClscn1eeLJ4CyRScLZQw= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([213.220.151.157]) by mail.gmx.com (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MEV3I-1kkCWu0Tus-00FyFS; Mon, 11 Jan 2021 18:56:18 +0100 From: Michael Albinus References: Date: Mon, 11 Jan 2021 18:56:17 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 11 Jan 2021 08:52:27 -0800") Message-ID: <87mtxf5pdq.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:7aDYAFkJTx+Bkceu5XlravFuDBonJYRnC7ckg0dFha4Gsx7lAVS NbG3NLtCnNfVdZ9WPNRgIWDhhn/kPqDv80c6q80rzg5OnKNb2XTnuY8qc7LtTEGRlMVpNP2 udeHQKkXe938mov+T8paTIi1jx5LlMB444piDdhRs5Fni5FfmE5mNkigNaMbEK0Dk3kKtf3 9pMAp0Og2uxdirhoXIXIQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:hTBr19ALQxQ=:b/x3u0qZWgVEsRbhRgDxio I5OHm/7btef/hnSf4jxE2LCBlrVaq0YUW76bK30s4eZEeQ08nO+q/mCBhnB1TXmPsee5vPdjr 6A4b/vde6vlF/rEYSpEW/jpL1sbEURQO/GmMbIq2LE0TX9bRxoJ4PLIjGlXKfcibIZzrdxZQL wMTjU1Tp45OBfs2GT6VPwI4o1C332mMYcQYjkO47hEG8jZC3R8kgtsN/IF49zznO/heikcpM2 lWrYwn9RTsTNTuX7PRt03LHzx8+KQm/rf5mOfeXytG1LSNv/aqyROuFwpsNlHpfF+vqrHd8JM p//Ztu1rx+u2kwL4NdU5QFc0V0aV0OAx42TVW7qW6he/hxlrKCBxHihuFcJpLFoR/zp2Wrx+S A18MR3z9QHTI24Iwyaqy/MtD5Et3LIM/TpMwV3NUqwOHmh8dCZIR9N/QElNUB5dUxXv1GhqQx ZHXIv1USZQWdwHQV+T+WLDN9SoFzS3muFg23dbOu9ZilpSn4dPkKD9AgDc+xtSOjVDni/pPe8 wA8ejV35XbvOGnlBQA+Zoywb1wGNq6QFD96NmfY0XYtWNKYZ+7xd7AjTLQzC0gffBKyGPIaMO uVNLdjC41nTMo40dhDmBtbG0zYLGi0ys3n7dCHvUGa/EK0LHXlKNQ1XlRszOHKKyKm5L73rVk Rq9Fnn2hna9HyY1LHw0MrrAi7E0YlYBhotUNffCzfpWcR3k59kW9IgZCjG/B02wBaFTtCIvfd BmC+0mLg5Sw6Ii6KGMVSeW9lZQfbnSPwOlyx74t9sZwEBgwYbZU2MFr7knIbyHfIb/z1kUJqu A8uXjaHng7+TwYdAgafsaxFBFpmWCDzSp+T3koo8XIUaFY4nxfbhdRNj1tOQURxpym/KwRNTi SDRXS7AR88yTjVqGDbzA== X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Duncan Greatwood writes: > Hi Michael - Hi Duncan, > Is there a way for me to capture any trace, call-stack or similar when > the emacs window is in the tramp-hung state? I could share that back > to you, if practical. Good News: I have a FreeBSD 12.1 VM hanging around. Installing Emacs 28 on that machine, trying your recipe with my remote Ubuntu machine, and voil=C3=A0 - it hangs. Great :-) Well, C-g several times doesn't kill the compile process, but so what: I can test now. Will play with this next days, as time permits. > Alternatively, if you had time and could spend the few $s (it's "pay > as you go"), you could try from a Mac on Amazon. > https://aws.amazon.com/ec2/instance-types/mac/ Ah, I didn't know. Good to have it as fallback, I don't care to share some few $s ... But I haven't used this type of OS ever, so I would need to learn how to install Emacs there. > Finally, presuming we can't fix the underlying issue on mac, do you > know approximately when the version of tramp that fixes the "Ctrl-G x3 > Fails to Interrupt Hung Tramp" issue will make it to release? The > December 29th version I tried coupled with emacs 27.1 seemed to fix > the ctrl-g issue but otherwise was quite inclined to crash-and-exit > emacs. I know the tramp version I tried is an alpha so no problem, > just wondering when it may reach general release? It is Tramp 2.5.0, which I have released meanwhile via GNU ELPA. So you might try to install it from there. Emacs 28, which will carry it built-in, is still months away from a release. I wouldn't even bet that this will happen this year; currently Emacs 27.2 has started its pretest. However, I plan regular Tramp 2.5 releases via GNU ELPA (once a month or so). What do you mean with "crash-and-exit emacs"? Is it just because of the changed Tramp version? There have been bug reports that Tramp could crash Emacs on macOS. But finally, it wasn't a Tramp issue, but rather a bug in Emacs which was uncovered by Tramp. This is fixed now in the Emacs repository, see bug#24472, bug#37299, bug#37557. The bugs are merged, so it seems to be the same problem. If you see other problems related to Tramp 2.5.0, pls report. I'll happily try to fix them. > Regards, > Duncan. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Jan 2021 04:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161042610410081 (code B ref 45518); Tue, 12 Jan 2021 04:36:01 +0000 Received: (at 45518) by debbugs.gnu.org; 12 Jan 2021 04:35:04 +0000 Received: from localhost ([127.0.0.1]:58916 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzBOa-0002cW-EB for submit@debbugs.gnu.org; Mon, 11 Jan 2021 23:35:04 -0500 Received: from mail-io1-f42.google.com ([209.85.166.42]:39897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzBOV-0002bw-N0 for 45518@debbugs.gnu.org; Mon, 11 Jan 2021 23:35:02 -0500 Received: by mail-io1-f42.google.com with SMTP id d9so1380206iob.6 for <45518@debbugs.gnu.org>; Mon, 11 Jan 2021 20:34:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=2ofZVpEMHa2je2EeLNuhOr3xd7O69ukNrjVUAef5gjM=; b=PMo2kxsXRB4Z18Y1t6HTEdpRAMMr5YTa6+XsSIa/Xe5vGR2BZHn314cP40eg8a92mp ChzKPDISxHwZDh4uQwkEjARsw/uOfu5wZLQ4dM7zFf7OTqBjHACzXGhPp2Qbve4Miece qdylY+BgpI42bwfDfnxLtJR1wn93Igj+f6t0wsYdda6QB9HRarjWVCGaGGUE8A9RSTAq VV39BtUbuHN1FTgpjZIz9fTikwraJC9m1KmhT+uqVFYvc+i0LKhs4Pbal2qxIauBCjxC ovX/0XEOvwtybMGkgFwozog4QYk/D6wEM4eOfM7KE8hq6zSfvVjbweJDELM6/XMpVh5S DypA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=2ofZVpEMHa2je2EeLNuhOr3xd7O69ukNrjVUAef5gjM=; b=q7qpn8TeFQEhdrHGUvuFee+I8Y9d2lS+VDccrJZ4uMPQbRiZoF0bI88wsplJaakD65 fRPnTA3dlOu+QkXKebfBAxlyLep+jZf6s5+a2g2IU2IUKmCuoRZ7fxc1Q7sF1sSekDmW fF5LdqtvMwIW/Ifp3JWlJYeWHVpS6yyZkjNPl5ABZGN6DJn5nELkZXIJJ9EFL+/pnIlt pC4d6CLQN7/aTQNJHW+qTYucL9pmsgVuK9VCIJqd38eKBarQ5/3O8wJk6oFVPI8JeU38 XzP5+6jxvuY5RU3L5JlbyUI0VoO+42yglI2zY7VRoE9gnOLkqDIpc6sK3iSIDFgaGkx4 0QxQ== X-Gm-Message-State: AOAM5324LCpJPYS2TuKVBOHAm8ZUIB7OxE212SiQ6PwfZCd5ikyIxmHv xTQWN2qDMMFKUDzpMYNp+UcDio9YGxhmAe0Dxuc= X-Google-Smtp-Source: ABdhPJzYvwfzBfz44Jc38z4/LC7IAUpnFjm4nOyMQNvo5sQ1qa3ioidMUCJEOyH4LyDpHG4PHgHqom710uQwHRCKHOs= X-Received: by 2002:a6b:6f07:: with SMTP id k7mr1923909ioc.48.1610426093997; Mon, 11 Jan 2021 20:34:53 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 11 Jan 2021 20:34:42 -0800 Message-ID: Content-Type: multipart/alternative; boundary="0000000000004511e805b8ac8b32" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000004511e805b8ac8b32 Content-Type: text/plain; charset="UTF-8" I hadn't thought of FreeBSD, but, since it's said that parts of macos originated with FreeBSD it was a smart idea... glad it worked! Regarding the crashes with the newest tramp I tried, I didn't look at them with precision, sorry. From the bugs you mentioned: - bug#24472, bug#37299 (menu bar) - I did see a menu bar crash, maybe the same thing(s) - bug#37557 scrolling - I didn't notice this one, but perhaps the keys I pressed that seemed to "cause" a crash were scrolling the window. If crashing remains an issue in a little while, I can try and recreate, and will file a new bug. Meanwhile, good luck with debugging these bug#45518 issues. Thanks again! --0000000000004511e805b8ac8b32 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I hadn't thought of FreeBSD, but, since it's said = that parts of macos originated with FreeBSD it was a smart idea... glad it = worked!

Regarding the crashes=C2=A0with the newest tramp= I tried, I didn't look at them with precision, sorry. From the bugs yo= u mentioned:
  • bug#24472, bug#37299=C2=A0(menu bar) - I did= see a menu bar crash, maybe the same thing(s)
  • bug#37557 scroll= ing - I didn't notice this one, but perhaps the keys I pressed that see= med to "cause"=C2=A0a crash were scrolling the window.
  • If crashing remains an issue in a little while, I can try and recre= ate, and will file a new bug.

Meanwhile, goo= d luck with debugging=C2=A0these bug#45518 issues.

Thanks again!



--0000000000004511e805b8ac8b32-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Jan 2021 09:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161044217415764 (code B ref 45518); Tue, 12 Jan 2021 09:03:01 +0000 Received: (at 45518) by debbugs.gnu.org; 12 Jan 2021 09:02:54 +0000 Received: from localhost ([127.0.0.1]:59237 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzFZm-00046B-D8 for submit@debbugs.gnu.org; Tue, 12 Jan 2021 04:02:54 -0500 Received: from mout.gmx.net ([212.227.17.21]:50263) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzFZk-00045y-Lf for 45518@debbugs.gnu.org; Tue, 12 Jan 2021 04:02:53 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1610442166; bh=ksfWLscqJc5hIYZq8GgkXBMyOwqVEMXNvf5+EUe2bvI=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=O2F+HPHFx3+D/eH1yQEM2IhfidWXMpGXHO9sd73iL5Z22oqXkaAa2XbnT9WJ8uZkN +VseE6ZlkNfuADtHclFVu0U4xZlr/YxWh6wrNDJBs3bWZ8rvqxTk6lCCXMICtkaf2z 0SIfcMcrDfLABIakW/UHsFRMi8RxBRYklrX6ShGE= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.59.182]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MqaxU-1kCyNZ37Vg-00mbzn; Tue, 12 Jan 2021 10:02:45 +0100 From: Michael Albinus References: Date: Tue, 12 Jan 2021 10:02:44 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 11 Jan 2021 20:34:42 -0800") Message-ID: <87eeiq5xzf.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:gZp1VTDpQgcDBD9bpF1frYPbjwvANaIScQ2UPJrP7bMS4h26LBV I1L6vT5dXAjeNXrlVoxMycSguqxXGmwMmdQ3NRE4daZ1IRJQHLWOgLv2FEJhhFQuyIDmdeQ m9EGUSgRjvdY1vXGWFtI04nD4SkHZqa9j2uWzIh/+/nnM10nw9rRCw1mWCeTrmKfsmxXsYQ kuuvwwBnISEYSfvGFEy5A== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:82WD7FbPuL0=:SSswngEbFWwSFwtpEN+y80 8fy39sBKj36e09EXQrKQZAl1SxqinhEzx4TPuv2KulLUuFkGe0r/hram3oXzyvWKNeKXHZOXT 6v/rZlEMkayi+T9bJ81DoTW5+Kl6b5vHcNiBFcnsUF0rs9ocanpzjIc4E0wTvlMJ9xKPDApve NF+cGG6v5rxr9VbnkBLkKAu1JCx4noW2D4H2pt5xQY8NLIIbaii2nOK2lAmMMbFXLftVWrTWI Xii30Fl0+bwQEINYtBqL/LhBaaGYaIzdGjsARx/vPwY9PwaU41Vje/T91OV8FoDxXHlhCzCIM achb+WJP2ZThCNTmbX8ftbf3pZp+K3/BUU22JRYol3PlNOILoHkXOeT//gq7WfUDnij6lQ6Sr L7J8/12OFZKFbVf2Th+jyDPffZslhwYDI4+vExAEth/3e91aJ6LEmeWHkEYPXbrzOIM/7qRMs dzHgL24rSpEmW4jcAtvkrV+5BuKKsHlGIGXnktGhAVmEbuuRyoOA8+kgVMpZ+zfwy0ETQGbEl geVsK4TWDnsq274lGa8BfNRxBA72M1O3rMVdcv5P6mu+t9pn69rV1+GJ66aRrf5wVPsSW2ZqP duLXFuAA3y7cCxy1kk0XjfJLZECK/Ts2NG5fceiz+V8aqcu16hJkoxh3XAkoH0p1RqfLrax9E h0rpx75H5nBz115kZXVQt28rKcvUvO2dfrseayfandg/qGBywbQUt6I7BhptvJGGUjYLq709l S4kKi9JtNuFxA1PH9KMJM7rzn6+QRA5K5G7PxtnC0FxHQzIbmXvZwdI6qcbfWfhS9kBCvJlip wp+eicNnMijBkbnTH0qXA30oeyzWuau3UN4dvsOq1nBfhnxte+vyaDLd9hBMzL/ZXJIv6xtTr 3JjIuvMRBLl2zsk3mwlw== X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Duncan Greatwood writes: Hi Duncan, > I hadn't thought of FreeBSD, but, since it's said that parts of macos > originated with FreeBSD it was a smart idea... glad it worked! I'm still fighting with FreeBSD Emacs to get it debugged after blocking. But Tramp 2.5.0 has a new feature called "direct async processes", which is an optimization for process calls in some environments. I've tried it here, and indeed, Emacs does not block when compiling the remote example. You could try it yourself. Eval (add-to-list 'tramp-connection-properties (list (regexp-quote "/ssh:user@host:") "direct-async-process" t)) on a fresh Emacs instance, before you connect to remote. "/ssh:user@host:" must be adapted, of course. See (info "(tramp) Improving performance of asynchronous remote processes") for details (this require the info file from Tramp 2.5.0). > Thanks again! Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Jan 2021 15:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161046376415160 (code B ref 45518); Tue, 12 Jan 2021 15:03:02 +0000 Received: (at 45518) by debbugs.gnu.org; 12 Jan 2021 15:02:44 +0000 Received: from localhost ([127.0.0.1]:32810 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzLBz-0003wS-Lv for submit@debbugs.gnu.org; Tue, 12 Jan 2021 10:02:43 -0500 Received: from mout.gmx.net ([212.227.15.15]:44941) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kzLBw-0003wE-Ks for 45518@debbugs.gnu.org; Tue, 12 Jan 2021 10:02:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1610463753; bh=wVEyHIGlxVbYGaTQ336n2PWKouucq+vtpmMbP5G29Ns=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=ID/lDw+AbGoFXlzblJ05oXcqe/SsvTbrtUQRywutryvZ3mI02bVEqP+sGejnSrpNh f/nNR4PYKBdqnaKIyf4GIw6vCebrtSECF1IisSLsA1/I0rgT5tcIKY4isZXFhYDdjH MED9IgmisWKgnz7oAiUFSlD6l7tcw9vRoYTNwDzQ= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.59.182]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MzQg6-1k43k913Nw-00vQHy; Tue, 12 Jan 2021 16:02:33 +0100 From: Michael Albinus References: Date: Tue, 12 Jan 2021 16:02:32 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 11 Jan 2021 20:34:42 -0800") Message-ID: <875z425hbr.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:uPttEYjLrggMhms+49thJ2Qo4otDprdAD1UWuqFmi9wjC0oCsBT nb8qjtviMDQYVbTvH48NnY9hRxJgPK+XLd//tQ2wcFeetNQHBuA6zTWGpArIDfmeszH5jO3 BvTcDcjHyj8FbTreiCAG3WhSbNBT5fngJWUnymN1Hw5ZMN0kycn1O4P2M/AgLlY2s45F/rR HxNsCDJsQ8WjUwA+GWsEw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:Ox7sV4or0x4=:EGnoMJCiGjzndi11rhIMtQ 3Se7ITa2zMeJeROirGCEp6AKiD4uc0MU0yxbAqzc6PMXC7Wvp4YoX+1DZz/Y+pIzqnQ0a18qJ WoMsnesu9onfvfm7WGAqHV30n76j4WLFhQDNsfExeHvFOpRrs9v7PNnXKC87Ga+h+od4/OdHD gmpcwf9PLYmVGLCtK2OAXsulTAHr497CmGa7/aakLP6Xn5VcazD02u734fBpI9tFuJFfcxJlp MBtVkXp/jewH6HbidwsSrMggY2E7TdNjjvvxLCx0NF4PqJH1RCBegCfog0FBc0nHHAMCuTC0y yUEbTQ+XxqVGq24JNXtYBugZIXJCfGCDlb+d5vlak0Vii1e5mwXkpfBPPpW8R0uJet4XsS9yL IV7gI0MUCQFPh/Rm29DFNfxKhk7iI9jN0bpfQKP5gpClecMx5C9AvfnKdC+wMA3y68GnWhw2M l+1wMyv/kP/TeKgH0hzUEOk4pc7Eo1xr3S+lGyTwxxXNVW+OIgWZZIfcvgL3fY/t1Ah8My0Dd /G5oZVbgBe5al6tsmnLeQp5LXI0mTSdPVNVhdmMJD3+qxJ9OidNEByHpjcvhz1ivvxehMUeaI 2bWpN6qFB4WDcxnaCCPXIu+X0IpIkEp9J0h0NrLOqwvWK5VU6fGfgy0QIftf395QvySskyBJN aCedQ7HsbGN7ihGcFHypCAmug0sipTRynJfxUyvM3ZJpJ2W6T0PxRVl8hbc0eJwCUek8gIYTk 9tuiip1NppONMpXfn8wHTHr6myBG+ntEQfDtPHB/tAnUi9F/PIOSKpGoDxsAaVIxr4Yyd62AX issln335MehBw8LhbJyBSaCsfE6NZ8JNAFTMfh9wwrsQ0qAkaqMOc28L34hShYEESUDIXQORU jHZ2o3T2uRsADWstxZ9Q== X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Duncan Greatwood writes: Hi Duncan, > Meanwhile, good luck with debugging these bug#45518 issues. Finally, I nailed it down. In the (remote) compilation process, there is a process filter, which calls `file-truename' if it detects an error. This works one or two times, but then the (remote) compilation process comes in conflict with the (remote) Tramp process responsible for `file-truename'. The following patch has fixed the issue for me on my FreeBSD machine. It is on top of Emacs' git master; but likely it works also for your Emacs 27 (not tested by me). Could you check, whether this helps you? > Thanks again! Best regards, Michael. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment Content-Transfer-Encoding: quoted-printable *** /tmp/ediffZ4hAwi 2021-01-12 16:00:49.593081437 +0100 =2D-- /home/albinus/src/emacs/lisp/progmodes/compile.el 2021-01-12 15:52:0= 2.111270252 +0100 *************** *** 3041,3047 **** ;; Get the specified directory from FILE. (spec-directory (if (cdr file) ! (file-truename (concat comint-file-name-prefix (cdr file)))))) ;; Check for a comint-file-name-prefix and prepend it if appropriate. ;; (This is very useful for compilation-minor-mode in an rlogin-mode =2D-- 3041,3052 ---- ;; Get the specified directory from FILE. (spec-directory (if (cdr file) ! ;; This function is active in `compilation-filter'. ! ;; There could be problems to call `file-truename' ! ;; for remote compilation processes. ! (if (file-remote-p default-directory) ! (concat comint-file-name-prefix (cdr file)) ! (file-truename (concat comint-file-name-prefix (cdr file))))))) ;; Check for a comint-file-name-prefix and prepend it if appropriate. ;; (This is very useful for compilation-minor-mode in an rlogin-mode --=-=-=-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 29 Jan 2021 05:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16118973595935 (code B ref 45518); Fri, 29 Jan 2021 05:16:01 +0000 Received: (at 45518) by debbugs.gnu.org; 29 Jan 2021 05:15:59 +0000 Received: from localhost ([127.0.0.1]:50839 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l5M8U-0001Xf-S3 for submit@debbugs.gnu.org; Fri, 29 Jan 2021 00:15:59 -0500 Received: from mail-il1-f177.google.com ([209.85.166.177]:33786) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l5M8R-0001XQ-GF for 45518@debbugs.gnu.org; Fri, 29 Jan 2021 00:15:57 -0500 Received: by mail-il1-f177.google.com with SMTP id e1so7500163ilu.0 for <45518@debbugs.gnu.org>; Thu, 28 Jan 2021 21:15:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=sqir433GMj8iDFiJkkAlQJgUNi+K+B700i+zDhCikD4=; b=lC/iHg7eQ+9pIuVKLlct6qh65mIDuBtIjrsuxh7446o0RYzgY/eHXYpR7ztYdr1xvA bt2e7zSdM4CuGkRxIBBJsGXNrvwVWYjbZviBzUX5+7YzasVrLDeOeJz5oHrvbLvlR58X RwZetQrkOvrzL5S67Ymuo4MIBzmay+xQp3Jowhx+XpelDp8FW86X9DP6BYgh6WJ3Unnc w86YY7aZkUAUpylU9SXRz2nB7HVkvNUfjopqoZB1U4dKyVX5szkPvupvI0hmAwXq1oNG HkD4q9+kxEan5ZoDIFPn0++jgDEAg0aaBPr25Nh3cckY97pvrjA8NLliGd2+DWHaZygn nB3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=sqir433GMj8iDFiJkkAlQJgUNi+K+B700i+zDhCikD4=; b=rfHuDTpCJ0n+z8w05ITDVX26ASxYbyJrfEz8n7l5hz/DZ8wocX6/42NqVTYBUeR7Hv 6mG6L31d6LY/GQpaqY5Kha+yEY6TyyXQBaUC6f58IXmcjOGd7CSdjrXjAIoiJmQJipAF JDoU+kvrm6F0BjRpBI6rBLtrK/+CbX0EaKFjbvobQTqflyDX9Isz7O97O8kte/zbcOpR aYOWkwsf6eEpim0FBKSOzGvqQdeuVoiiHdUs1yMxhdeeCLLKKWOfxZdQjwakEmHKJuN5 7LWArlE/chzoGvmO/LJY+G1ZwrTUimg1VaHkRpFW025aVaq9Yp+PoztJviDKa/YkqLVL DgKQ== X-Gm-Message-State: AOAM533srcRaeWa/Ss+4X4pA8shmO0fsTQVDdyf//SFalaEcN2hnJonr ZeZKtzdR+CX7GprsLg6YIvwhmBq1o9fzHrSP3Tc= X-Google-Smtp-Source: ABdhPJyoBFD+zKqFbxzmHaFQu8kVcJC5/ABJbmXyhTwb8MvOWWS2nYm5yg6P62mAjCA2EwdNr+7f019pOWgJAT9KuZU= X-Received: by 2002:a05:6e02:1d02:: with SMTP id i2mr2131514ila.30.1611897349916; Thu, 28 Jan 2021 21:15:49 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Thu, 28 Jan 2021 21:15:38 -0800 Message-ID: Content-Type: multipart/mixed; boundary="000000000000f4f3e505ba031840" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000f4f3e505ba031840 Content-Type: multipart/alternative; boundary="000000000000f4f3e205ba03183e" --000000000000f4f3e205ba03183e Content-Type: text/plain; charset="UTF-8" Hi Michael - Got back to this. Good news! The patch for compile.el, applied to Emacs 27.1, fixes the issue of the tramp window hanging in my test cases, running tramp from MAC. There is still one tramp hanging issue I saw in my testing. This is a much less serious issue (pressing ctrl-G once "unhangs"), but thought I'd mention it here. LMK if you'd prefer a separate bug report and I'll create one. If, during a "make" via tramp with many syntax errors, you click on one of the early errors produced in the tramp window, the compile pauses and the source window does not move to the error. Emacs appears to hang. If you press ctrl-G, then the compile continues, no problem, until eventually exiting. I also noticed the same effect if I just try and type a few characters into the source file while the make is going on - the compile hangs, and emacs appears to hang, until I press ctrl-G to allow it to continue. When I perform this operation directly in emacs on the ubuntu machine (i.e. without using tramp), clicking on an early error message while "make" continues to run does not hang anything - the "make" process continues and meanwhile (even before make completes) the source window moves to the error that I clicked on. Likewise I can type characters into the test.cpp source file during make without causing a hang. I am enclosing another test.cpp with even more errors to make it easier to catch this issue (you can just drop it into the src directory you were using for the last setup, overwriting the prior test.cpp). By the way, this time, the issue reproduces for me regardless of whether I am running the emacs-tramp on a Mac or on an ubuntu client; as you'll recall, the target host is ubuntu in both cases. Thanks again for fixing the main hanging issue! Duncan. On Tue, Jan 12, 2021 at 7:02 AM Michael Albinus wrote: > Duncan Greatwood writes: > > Hi Duncan, > > > Meanwhile, good luck with debugging these bug#45518 issues. > > Finally, I nailed it down. In the (remote) compilation process, there is > a process filter, which calls `file-truename' if it detects an > error. This works one or two times, but then the (remote) compilation > process comes in conflict with the (remote) Tramp process responsible > for `file-truename'. > > The following patch has fixed the issue for me on my FreeBSD machine. It > is on top of Emacs' git master; but likely it works also for your Emacs > 27 (not tested by me). Could you check, whether this helps you? > > > Thanks again! > > Best regards, Michael. > --000000000000f4f3e205ba03183e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Michael -

Got back to thi= s.

Good news! The patch for compile.el, applied to= Emacs 27.1, fixes the issue of the tramp window hanging in my test cases, = running tramp from MAC.

There is still one tramp h= anging issue I saw in my testing. This is a much less serious=C2=A0issue (p= ressing ctrl-G once "unhangs"), but thought I'd mention it he= re. LMK if you'd prefer a separate bug report and I'll create one.<= /div>

If, during a "make" via tramp with many = syntax errors, you click on one of the early errors produced in the tramp w= indow, the compile pauses and the source window does not move to the error.= Emacs appears to hang.

If you press ctrl-G, then = the compile continues, no problem, until eventually exiting.

=
I also noticed the same effect if I just try and type a few char= acters into the source file while the make is going on - the compile hangs,= and emacs appears to hang, until I press ctrl-G to allow it to continue.

When I perform this operation directly in emacs on = the ubuntu machine (i.e. without using tramp), clicking on an early error m= essage while "make" continues to run does not hang anything - the= "make" process continues and meanwhile (even before make complet= es) the source window moves to the error that I clicked on. Likewise I can = type characters into the test.cpp source file during make without causing a= hang.

I am enclosing another test.cpp with even m= ore errors to make it easier to catch this issue (you can just drop it into= the src directory you were using for the last setup, overwriting the prior= test.cpp).

By the way, this time, the issue repro= duces for me regardless of whether I am running the emacs-tramp on a Mac or= on an ubuntu client; as you'll recall, the target host is ubuntu in bo= th cases.

Thanks again for fixing the main hanging= issue!
Duncan.

Duncan Gr= eatwood <dgbulk@gm= ail.com> writes:

Hi Duncan,

> Meanwhile, good luck with debugging these bug#45518 issues.

Finally, I nailed it down. In the (remote) compilation process, there is a process filter, which calls `file-truename' if it detects an
error. This works one or two times, but then the (remote) compilation
process comes in conflict with the (remote) Tramp process responsible
for `file-truename'.

The following patch has fixed the issue for me on my FreeBSD machine. It is on top of Emacs' git master; but likely it works also for your Emacs=
27 (not tested by me). Could you check, whether this helps you?

> Thanks again!

Best regards, Michael.
--000000000000f4f3e205ba03183e-- --000000000000f4f3e505ba031840 Content-Type: application/octet-stream; name="test.cpp" Content-Disposition: attachment; filename="test.cpp" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kkhtx4ov0 Ly8gdGVzdC5jcHAgLSBmb3IgbG90cyBvZiBzeW50YXggZXJyb3JzCgojaW5jbHVkZSA8bXV0ZXg+ CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxtZW1vcnk+ICAg ICAgICAgCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKY2xhc3MgQTEKewogICAgaW50 IGYxKCk7CiAgICBpbnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQg ZjUoKTsKICAgIGludCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBm OSgpOwp9OwoKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xh c3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsK Y2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVk CnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVz dGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3Mg TmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xhc3MgTmVzdGVkCnsKY2xh c3MgTmVzdGVkCnsKICAgIEExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6 c2hhcmVkX3B0cjxBMT4gYTFwdHI7CiAgICBBMigpIHtBMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoK I2RlZmluZSBBTl9CT0RZICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKICAgIEExIHgxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExIHgyOyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgx KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6 c3RyaW5nIHMyKHgyKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKTmVzdGVkIG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwg YTEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0 ZDo6c3RyaW5nPiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3Rk Ojp2ZWN0b3I8c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXApyZXR1cm4oczErczIpOwoKaW50IEExOjpmMSgpCnsKICAgIEFOX0JPRFk7 Cn0KCmludCBBMTo6ZjIoKQp7CiAgICBBTl9CT0RZOwp9CgppbnQgQTE6OmYzKCkKewogICAgQU5f Qk9EWTsKfQoKaW50IEExOjpmNCgpCnsKICAgIEFOX0JPRFk7Cn0KCmludCBBMTo6ZjUoKQp7CiAg ICBBTl9CT0RZOwp9CgppbnQgQTE6OmY2KCkKewogICAgQU5fQk9EWTsKfQoKaW50IEExOjpmNygp CnsKICAgIEFOX0JPRFk7Cn0KCmludCBBMTo6ZjgoKQp7CiAgICBBTl9CT0RZOwp9CgppbnQgQTE6 OmY5KCkKewogICAgQU5fQk9EWTsKfQoKaW50IEExOjpmMTAoKQp7CiAgICBBTl9CT0RZOwp9CgoK aW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTsKfQoKCi8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpjbGFzcyBBMTEKewogICAgaW50IGYxKCk7CiAgICBp bnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGlu dCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xh c3MgTmVzdGVkMQp7CmNsYXNzIE5lc3RlZDEKewpjbGFzcyBOZXN0ZWQxCnsKY2xhc3MgTmVzdGVk MQp7CmNsYXNzIE5lc3RlZDEKewpjbGFzcyBOZXN0ZWQxCnsKY2xhc3MgTmVzdGVkMQp7CmNsYXNz IE5lc3RlZDEKewpjbGFzcyBOZXN0ZWQxCnsKY2xhc3MgTmVzdGVkMQp7CmNsYXNzIE5lc3RlZDEK ewpjbGFzcyBOZXN0ZWQxCnsKY2xhc3MgTmVzdGVkMQp7CmNsYXNzIE5lc3RlZDEKewpjbGFzcyBO ZXN0ZWQxCnsKY2xhc3MgTmVzdGVkMQp7CmNsYXNzIE5lc3RlZDEKewpjbGFzcyBOZXN0ZWQxCnsK Y2xhc3MgTmVzdGVkMQp7CmNsYXNzIE5lc3RlZDEKewpjbGFzcyBOZXN0ZWQxCnsKY2xhc3MgTmVz dGVkMQp7CmNsYXNzIE5lc3RlZDEKewogICAgQTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEy CnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTE+IGExcHRyOwogICAgQTIoKSB7QTExIGExOyBhMXB0 ciA9ICZhMTt9Cn07CgojZGVmaW5lIEFOX0JPRFkxICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMSB4MTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBBMTEgeDI7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg c3RkOjpzdHJpbmcgczEoeDEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXAogICAgc3RkOjpzdHJpbmcgczIoeDIpOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXApOZXN0ZWQxIG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3Rvcjxz dGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNv bnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTo6 ZjEoKQp7CiAgICBBTl9CT0RZMTsKfQoKaW50IEExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTsKfQoK aW50IEExMTo6ZjMoKQp7CiAgICBBTl9CT0RZMTsKfQoKaW50IEExMTo6ZjQoKQp7CiAgICBBTl9C T0RZMTsKfQoKaW50IEExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTsKfQoKaW50IEExMTo6ZjYoKQp7 CiAgICBBTl9CT0RZMTsKfQoKaW50IEExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTsKfQoKaW50IEEx MTo6ZjgoKQp7CiAgICBBTl9CT0RZMTsKfQoKaW50IEExMTo6ZjkoKQp7CiAgICBBTl9CT0RZMTsK fQoKaW50IEExMTo6ZjEwKCkKewogICAgQU5fQk9EWTE7Cn0KCgppbnQgbWFpbjEoaW50IGFyZ2Ms IGNoYXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLwoKY2xhc3MgQTExMQp7CiAgICBpbnQgZjEoKTsKICAgIGludCBmMigpOwogICAgaW50 IGYzKCk7CiAgICBpbnQgZjQoKTsKICAgIGludCBmNSgpOwogICAgaW50IGY2KCk7CiAgICBpbnQg ZjcoKTsKICAgIGludCBmOCgpOwogICAgaW50IGY5KCk7Cn07CgpjbGFzcyBOZXN0ZWQxMQp7CmNs YXNzIE5lc3RlZDExCnsKY2xhc3MgTmVzdGVkMTEKewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5l c3RlZDExCnsKY2xhc3MgTmVzdGVkMTEKewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDEx CnsKY2xhc3MgTmVzdGVkMTEKewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDExCnsKY2xh c3MgTmVzdGVkMTEKewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDExCnsKY2xhc3MgTmVz dGVkMTEKewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDExCnsKY2xhc3MgTmVzdGVkMTEK ewpjbGFzcyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDExCnsKY2xhc3MgTmVzdGVkMTEKewpjbGFz cyBOZXN0ZWQxMQp7CmNsYXNzIE5lc3RlZDExCnsKICAgIEExMTEgbTE7Cn07Cn07Cn07Cn07Cn07 Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07CgoK Y2xhc3MgQTIKewogICAgc3RkOjpzaGFyZWRfcHRyPEExMTE+IGExcHRyOwogICAgQTIoKSB7QTEx MSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTEgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgQTExMSB4MTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBB MTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTEgbjE7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0 IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBhMSk7ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHYxKDEsIG4xKTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gKiB2 MV9jcHRyKCZ2MSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCnJldHVybihzMStz Mik7CgppbnQgQTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTE7Cn0KCmludCBBMTExOjpmMigpCnsK ICAgIEFOX0JPRFkxMTsKfQoKaW50IEExMTE6OmYzKCkKewogICAgQU5fQk9EWTExOwp9CgppbnQg QTExMTo6ZjQoKQp7CiAgICBBTl9CT0RZMTE7Cn0KCmludCBBMTExOjpmNSgpCnsKICAgIEFOX0JP RFkxMTsKfQoKaW50IEExMTE6OmY2KCkKewogICAgQU5fQk9EWTExOwp9CgppbnQgQTExMTo6Zjco KQp7CiAgICBBTl9CT0RZMTE7Cn0KCmludCBBMTExOjpmOCgpCnsKICAgIEFOX0JPRFkxMTsKfQoK aW50IEExMTE6OmY5KCkKewogICAgQU5fQk9EWTExOwp9CgppbnQgQTExMTo6ZjEwKCkKewogICAg QU5fQk9EWTExOwp9CgoKaW50IG1haW4xMShpbnQgYXJnYywgY2hhciogYXJndltdKQp7CiAgICBB Tl9CT0RZMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKY2xhc3MgQTExMTEK ewogICAgaW50IGYxKCk7CiAgICBpbnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7 CiAgICBpbnQgZjUoKTsKICAgIGludCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsK ICAgIGludCBmOSgpOwp9OwoKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xh c3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3Mg TmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVz dGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVk MTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTEx CnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsK Y2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKY2xh c3MgTmVzdGVkMTExCnsKY2xhc3MgTmVzdGVkMTExCnsKICAgIEExMTExIG0xOwp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTExMT4gYTFwdHI7CiAgICBBMigp IHtBMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTExICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExIHgx OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgIEExMTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTExIG4xOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgx LCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpz dHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApy ZXR1cm4oczErczIpOwoKaW50IEExMTExOjpmMSgpCnsKICAgIEFOX0JPRFkxMTE7Cn0KCmludCBB MTExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTExOwp9CgppbnQgQTExMTE6OmYzKCkKewogICAgQU5f Qk9EWTExMTsKfQoKaW50IEExMTExOjpmNCgpCnsKICAgIEFOX0JPRFkxMTE7Cn0KCmludCBBMTEx MTo6ZjUoKQp7CiAgICBBTl9CT0RZMTExOwp9CgppbnQgQTExMTE6OmY2KCkKewogICAgQU5fQk9E WTExMTsKfQoKaW50IEExMTExOjpmNygpCnsKICAgIEFOX0JPRFkxMTE7Cn0KCmludCBBMTExMTo6 ZjgoKQp7CiAgICBBTl9CT0RZMTExOwp9CgppbnQgQTExMTE6OmY5KCkKewogICAgQU5fQk9EWTEx MTsKfQoKaW50IEExMTExOjpmMTAoKQp7CiAgICBBTl9CT0RZMTExOwp9CgoKaW50IG1haW4xMTEo aW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTExMTsKfQoKCi8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vCgpjbGFzcyBBMTExMTEKewogICAgaW50IGYxKCk7CiAgICBpbnQg ZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGludCBm NigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewpjbGFzcyBOZXN0ZWQxMTExCnsKY2xhc3Mg TmVzdGVkMTExMQp7CmNsYXNzIE5lc3RlZDExMTEKewogICAgQTExMTExIG0xOwp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTExMTE+IGExcHRyOwogICAgQTIo KSB7QTExMTExIGExOyBhMXB0ciA9ICZhMTt9Cn07CgojZGVmaW5lIEFOX0JPRFkxMTExICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTEx MSB4MTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCiAgICBBMTExMTEgeDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczEoeDEpOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczIoeDIp OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApOZXN0ZWQxMTEx IG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n PiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8 c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTExMTsK fQoKaW50IEExMTExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTExMTo6ZjMo KQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTExMTo6ZjQoKQp7CiAgICBBTl9CT0RZMTEx MTsKfQoKaW50IEExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTExMTo6 ZjYoKQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZ MTExMTsKfQoKaW50IEExMTExMTo6ZjgoKQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTEx MTo6ZjkoKQp7CiAgICBBTl9CT0RZMTExMTsKfQoKaW50IEExMTExMTo6ZjEwKCkKewogICAgQU5f Qk9EWTExMTE7Cn0KCgppbnQgbWFpbjExMTEoaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKewogICAg QU5fQk9EWTExMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKY2xhc3MgQTEx MTExMQp7CiAgICBpbnQgZjEoKTsKICAgIGludCBmMigpOwogICAgaW50IGYzKCk7CiAgICBpbnQg ZjQoKTsKICAgIGludCBmNSgpOwogICAgaW50IGY2KCk7CiAgICBpbnQgZjcoKTsKICAgIGludCBm OCgpOwogICAgaW50IGY5KCk7Cn07CgpjbGFzcyBOZXN0ZWQxMTExMQp7CmNsYXNzIE5lc3RlZDEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMQp7CmNsYXNzIE5lc3Rl ZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMQp7CmNsYXNzIE5l c3RlZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMQp7CmNsYXNz IE5lc3RlZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMQp7CmNs YXNzIE5lc3RlZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMQp7 CmNsYXNzIE5lc3RlZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQxMTEx MQp7CmNsYXNzIE5lc3RlZDExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEKewpjbGFzcyBOZXN0ZWQx MTExMQp7CmNsYXNzIE5lc3RlZDExMTExCnsKICAgIEExMTExMTEgbTE7Cn07Cn07Cn07Cn07Cn07 Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07CgoK Y2xhc3MgQTIKewogICAgc3RkOjpzaGFyZWRfcHRyPEExMTExMTE+IGExcHRyOwogICAgQTIoKSB7 QTExMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTExMTEgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgQTExMTEx MSB4MTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCiAgICBBMTExMTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgy KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTEx MTEgbjE7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBhMSk7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJp bmc+IHYxKDEsIG4xKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdGQ6OnZlY3Rv cjxzdGQ6OnN0cmluZz4gKiB2MV9jcHRyKCZ2MSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCnJldHVybihzMStzMik7CgppbnQgQTExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTEx MTE7Cn0KCmludCBBMTExMTExOjpmMigpCnsKICAgIEFOX0JPRFkxMTExMTsKfQoKaW50IEExMTEx MTE6OmYzKCkKewogICAgQU5fQk9EWTExMTExOwp9CgppbnQgQTExMTExMTo6ZjQoKQp7CiAgICBB Tl9CT0RZMTExMTE7Cn0KCmludCBBMTExMTExOjpmNSgpCnsKICAgIEFOX0JPRFkxMTExMTsKfQoK aW50IEExMTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExOwp9CgppbnQgQTExMTExMTo6Zjco KQp7CiAgICBBTl9CT0RZMTExMTE7Cn0KCmludCBBMTExMTExOjpmOCgpCnsKICAgIEFOX0JPRFkx MTExMTsKfQoKaW50IEExMTExMTE6OmY5KCkKewogICAgQU5fQk9EWTExMTExOwp9CgppbnQgQTEx MTExMTo6ZjEwKCkKewogICAgQU5fQk9EWTExMTExOwp9CgoKaW50IG1haW4xMTExMShpbnQgYXJn YywgY2hhciogYXJndltdKQp7CiAgICBBTl9CT0RZMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLwoKY2xhc3MgQTExMTExMTEKewogICAgaW50IGYxKCk7CiAgICBpbnQgZjIo KTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGludCBmNigp OwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xhc3MgTmVz dGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEx CnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVk MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExCnsKICAgIEExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEy CnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTExMTExMT4gYTFwdHI7CiAgICBBMigpIHtBMTExMTEx MSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTExMTExICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExMTExIHgx OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgIEExMTExMTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTExMTEx IG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5n PiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8 c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTExMTExOjpmMSgpCnsKICAgIEFOX0JPRFkxMTEx MTE7Cn0KCmludCBBMTExMTExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTExMTExOwp9CgppbnQgQTEx MTExMTE6OmYzKCkKewogICAgQU5fQk9EWTExMTExMTsKfQoKaW50IEExMTExMTExOjpmNCgpCnsK ICAgIEFOX0JPRFkxMTExMTE7Cn0KCmludCBBMTExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTEx MTExOwp9CgppbnQgQTExMTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExMTsKfQoKaW50IEEx MTExMTExOjpmNygpCnsKICAgIEFOX0JPRFkxMTExMTE7Cn0KCmludCBBMTExMTExMTo6ZjgoKQp7 CiAgICBBTl9CT0RZMTExMTExOwp9CgppbnQgQTExMTExMTE6OmY5KCkKewogICAgQU5fQk9EWTEx MTExMTsKfQoKaW50IEExMTExMTExOjpmMTAoKQp7CiAgICBBTl9CT0RZMTExMTExOwp9CgoKaW50 IG1haW4xMTExMTEoaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTExMTExMTsK fQoKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgpjbGFzcyBBMTExMTExMTEKewogICAg aW50IGYxKCk7CiAgICBpbnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBp bnQgZjUoKTsKICAgIGludCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGlu dCBmOSgpOwp9OwoKY2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEKewpj bGFzcyBOZXN0ZWQxMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDEx MTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEx MQp7CmNsYXNzIE5lc3RlZDExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEKewpjbGFzcyBOZXN0ZWQx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEKewpjbGFz cyBOZXN0ZWQxMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTEx MTEKewogICAgQTExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6 c2hhcmVkX3B0cjxBMTExMTExMTE+IGExcHRyOwogICAgQTIoKSB7QTExMTExMTExIGExOyBhMXB0 ciA9ICZhMTt9Cn07CgojZGVmaW5lIEFOX0JPRFkxMTExMTExICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExMTExMSB4MTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBB MTExMTExMTEgeDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczEoeDEpOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczIoeDIpOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApOZXN0ZWQxMTExMTExIG4xOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgx LCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpz dHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApy ZXR1cm4oczErczIpOwoKaW50IEExMTExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTExMTExMTsK fQoKaW50IEExMTExMTExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTEx MTExMTo6ZjMoKQp7CiAgICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTExMTExMTo6ZjQoKQp7 CiAgICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZ MTExMTExMTsKfQoKaW50IEExMTExMTExMTo6ZjYoKQp7CiAgICBBTl9CT0RZMTExMTExMTsKfQoK aW50IEExMTExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTExMTEx MTo6ZjgoKQp7CiAgICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTExMTExMTo6ZjkoKQp7CiAg ICBBTl9CT0RZMTExMTExMTsKfQoKaW50IEExMTExMTExMTo6ZjEwKCkKewogICAgQU5fQk9EWTEx MTExMTE7Cn0KCgppbnQgbWFpbjExMTExMTEoaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKewogICAg QU5fQk9EWTExMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKY2xhc3Mg QTExMTExMTExMQp7CiAgICBpbnQgZjEoKTsKICAgIGludCBmMigpOwogICAgaW50IGYzKCk7CiAg ICBpbnQgZjQoKTsKICAgIGludCBmNSgpOwogICAgaW50IGY2KCk7CiAgICBpbnQgZjcoKTsKICAg IGludCBmOCgpOwogICAgaW50IGY5KCk7Cn07CgpjbGFzcyBOZXN0ZWQxMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTEx MTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEKewpjbGFz cyBOZXN0ZWQxMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExCnsKY2xhc3MgTmVzdGVkMTEx MTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMQp7CmNsYXNzIE5lc3RlZDEx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMQp7CmNs YXNzIE5lc3RlZDExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEKewpjbGFzcyBOZXN0ZWQx MTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEKewpj bGFzcyBOZXN0ZWQxMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExCnsKICAgIEExMTExMTEx MTEgbTE7Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07 Cn07Cn07Cn07Cn07Cn07Cn07CgoKY2xhc3MgQTIKewogICAgc3RkOjpzaGFyZWRfcHRyPEExMTEx MTExMTE+IGExcHRyOwogICAgQTIoKSB7QTExMTExMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoK I2RlZmluZSBBTl9CT0RZMTExMTExMTEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAogICAgQTExMTExMTExMSB4MTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBBMTExMTExMTExIHgy OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTExMTExMTEgbjE7ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0 IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBhMSk7ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHYxKDEsIG4xKTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gKiB2 MV9jcHRyKCZ2MSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCnJldHVybihzMStz Mik7CgppbnQgQTExMTExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTExMTExMTE7Cn0KCmludCBB MTExMTExMTExOjpmMigpCnsKICAgIEFOX0JPRFkxMTExMTExMTsKfQoKaW50IEExMTExMTExMTE6 OmYzKCkKewogICAgQU5fQk9EWTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTo6ZjQoKQp7CiAg ICBBTl9CT0RZMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExOjpmNSgpCnsKICAgIEFOX0JPRFkx MTExMTExMTsKfQoKaW50IEExMTExMTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExMTExOwp9 CgppbnQgQTExMTExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTE7Cn0KCmludCBBMTEx MTExMTExOjpmOCgpCnsKICAgIEFOX0JPRFkxMTExMTExMTsKfQoKaW50IEExMTExMTExMTE6OmY5 KCkKewogICAgQU5fQk9EWTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTo6ZjEwKCkKewogICAg QU5fQk9EWTExMTExMTExOwp9CgoKaW50IG1haW4xMTExMTExMShpbnQgYXJnYywgY2hhciogYXJn dltdKQp7CiAgICBBTl9CT0RZMTExMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLwoKY2xhc3MgQTExMTExMTExMTEKewogICAgaW50IGYxKCk7CiAgICBpbnQgZjIoKTsKICAg IGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGludCBmNigpOwogICAg aW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xhc3MgTmVzdGVkMTEx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVk MTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEx CnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTEx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMTExCnsKICAgIEExMTExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoK CmNsYXNzIEEyCnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTExMTExMTExMT4gYTFwdHI7CiAgICBB MigpIHtBMTExMTExMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTEx MTExMTExICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgIEExMTExMTExMTExIHgxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExMTExMTExIHgyOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3Ry aW5nIHMxKHgxKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK ICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKTmVzdGVkMTExMTExMTExIG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3Rvcjxz dGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNv bnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTEx MTExMTExOjpmMSgpCnsKICAgIEFOX0JPRFkxMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTo6 ZjIoKQp7CiAgICBBTl9CT0RZMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTE6OmYzKCkKewog ICAgQU5fQk9EWTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExOjpmNCgpCnsKICAgIEFOX0JP RFkxMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTExMTEx MTExOwp9CgppbnQgQTExMTExMTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExMTExMTsKfQoK aW50IEExMTExMTExMTExOjpmNygpCnsKICAgIEFOX0JPRFkxMTExMTExMTE7Cn0KCmludCBBMTEx MTExMTExMTo6ZjgoKQp7CiAgICBBTl9CT0RZMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTE6 OmY5KCkKewogICAgQU5fQk9EWTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExOjpmMTAoKQp7 CiAgICBBTl9CT0RZMTExMTExMTExOwp9CgoKaW50IG1haW4xMTExMTExMTEoaW50IGFyZ2MsIGNo YXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTExMTExMTExMTsKfQoKCi8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vCgpjbGFzcyBBMTExMTExMTExMTEKewogICAgaW50IGYxKCk7CiAgICBpbnQg ZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGludCBm NigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xhc3Mg TmVzdGVkMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQx MTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEx MTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMQp7CmNs YXNzIE5lc3RlZDExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTEx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTEK ewpjbGFzcyBOZXN0ZWQxMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExCnsKY2xhc3MgTmVzdGVk MTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTEKewog ICAgQTExMTExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6c2hh cmVkX3B0cjxBMTExMTExMTExMTE+IGExcHRyOwogICAgQTIoKSB7QTExMTExMTExMTExIGExOyBh MXB0ciA9ICZhMTt9Cn07CgojZGVmaW5lIEFOX0JPRFkxMTExMTExMTExICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExMTExMTExMSB4 MTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCiAgICBBMTExMTExMTExMTEgeDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczEoeDEpOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczIo eDIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApOZXN0ZWQx MTExMTExMTExIG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwg YTEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0 ZDo6c3RyaW5nPiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3Rk Ojp2ZWN0b3I8c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTExMTExMTExMTo6ZjEoKQp7CiAg ICBBTl9CT0RZMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTo6ZjIoKQp7CiAgICBBTl9C T0RZMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTo6ZjMoKQp7CiAgICBBTl9CT0RZMTEx MTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTo6ZjQoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTsKfQoKaW50IEExMTExMTExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTsKfQoK aW50IEExMTExMTExMTExMTo6ZjYoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTsKfQoKaW50IEEx MTExMTExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTsKfQoKaW50IEExMTExMTEx MTExMTo6ZjgoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTo6 ZjkoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTo6ZjEwKCkK ewogICAgQU5fQk9EWTExMTExMTExMTE7Cn0KCgppbnQgbWFpbjExMTExMTExMTEoaW50IGFyZ2Ms IGNoYXIqIGFyZ3ZbXSkKewogICAgQU5fQk9EWTExMTExMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLwoKY2xhc3MgQTExMTExMTExMTExMQp7CiAgICBpbnQgZjEoKTsKICAg IGludCBmMigpOwogICAgaW50IGYzKCk7CiAgICBpbnQgZjQoKTsKICAgIGludCBmNSgpOwogICAg aW50IGY2KCk7CiAgICBpbnQgZjcoKTsKICAgIGludCBmOCgpOwogICAgaW50IGY5KCk7Cn07Cgpj bGFzcyBOZXN0ZWQxMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMQp7CmNsYXNzIE5lc3Rl ZDExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTEx MTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEx MTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTEKewpjbGFzcyBOZXN0 ZWQxMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTEx MTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMQp7 CmNsYXNzIE5lc3RlZDExMTExMTExMTExCnsKICAgIEExMTExMTExMTExMTEgbTE7Cn07Cn07Cn07 Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07 Cn07CgoKY2xhc3MgQTIKewogICAgc3RkOjpzaGFyZWRfcHRyPEExMTExMTExMTExMTE+IGExcHRy OwogICAgQTIoKSB7QTExMTExMTExMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBB Tl9CT0RZMTExMTExMTExMTEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAogICAgQTExMTExMTExMTExMSB4MTsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBBMTExMTExMTExMTExIHgy OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgyKTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTExMTExMTExMTEgbjE7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNv bnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBhMSk7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHYxKDEsIG4xKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4g KiB2MV9jcHRyKCZ2MSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCnJldHVybihz MStzMik7CgppbnQgQTExMTExMTExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTE7 Cn0KCmludCBBMTExMTExMTExMTExOjpmMigpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTsKfQoK aW50IEExMTExMTExMTExMTE6OmYzKCkKewogICAgQU5fQk9EWTExMTExMTExMTExOwp9CgppbnQg QTExMTExMTExMTExMTo6ZjQoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTE7Cn0KCmludCBBMTEx MTExMTExMTExOjpmNSgpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTsKfQoKaW50IEExMTExMTEx MTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTEx MTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTExOjpm OCgpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTE6OmY5KCkK ewogICAgQU5fQk9EWTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTExMTo6ZjEwKCkKewog ICAgQU5fQk9EWTExMTExMTExMTExOwp9CgoKaW50IG1haW4xMTExMTExMTExMShpbnQgYXJnYywg Y2hhciogYXJndltdKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLwoKY2xhc3MgQTExMTExMTExMTExMTEKewogICAgaW50IGYxKCk7CiAg ICBpbnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAg IGludCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoK Y2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVk MTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTEx MTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTEx MTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTEx MTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTEx CnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExCnsKICAgIEEx MTExMTExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNzIEEyCnsKICAgIHN0ZDo6c2hhcmVk X3B0cjxBMTExMTExMTExMTExMT4gYTFwdHI7CiAgICBBMigpIHtBMTExMTExMTExMTExMSBhMTsg YTFwdHIgPSAmYTE7fQp9OwoKI2RlZmluZSBBTl9CT0RZMTExMTExMTExMTExICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIEExMTExMTExMTEx MTExIHgxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKICAgIEExMTExMTExMTExMTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3Ry aW5nIHMyKHgyKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK TmVzdGVkMTExMTExMTExMTExIG4xOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXApjb25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmlu Zz4gdjEoMSwgYTEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6 dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBuMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXApyZXR1cm4oczErczIpOwoKaW50IEExMTExMTExMTExMTEx OjpmMSgpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTExMTo6 ZjIoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTExMTE6OmYz KCkKewogICAgQU5fQk9EWTExMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTExOjpmNCgp CnsKICAgIEFOX0JPRFkxMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTExMTo6ZjUoKQp7 CiAgICBBTl9CT0RZMTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTExMTE6OmY2KCkKewog ICAgQU5fQk9EWTExMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTExOjpmNygpCnsKICAg IEFOX0JPRFkxMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTExMTo6ZjgoKQp7CiAgICBB Tl9CT0RZMTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTExMTE6OmY5KCkKewogICAgQU5f Qk9EWTExMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTExOjpmMTAoKQp7CiAgICBBTl9C T0RZMTExMTExMTExMTExOwp9CgoKaW50IG1haW4xMTExMTExMTExMTEoaW50IGFyZ2MsIGNoYXIq IGFyZ3ZbXSkKewogICAgQU5fQk9EWTExMTExMTExMTExMTsKfQoKCi8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vCgpjbGFzcyBBMTExMTExMTExMTExMTEKewogICAgaW50IGYxKCk7CiAgICBp bnQgZjIoKTsKICAgIGludCBmMygpOwogICAgaW50IGY0KCk7CiAgICBpbnQgZjUoKTsKICAgIGlu dCBmNigpOwogICAgaW50IGY3KCk7CiAgICBpbnQgZjgoKTsKICAgIGludCBmOSgpOwp9OwoKY2xh c3MgTmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTEKewpjbGFz cyBOZXN0ZWQxMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTEKewpjbGFzcyBO ZXN0ZWQxMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5l c3RlZDExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTEKewpjbGFzcyBOZXN0 ZWQxMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3Rl ZDExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVk MTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQx MTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDEx MTExMTExMTExMTEKewogICAgQTExMTExMTExMTExMTExIG0xOwp9Owp9Owp9Owp9Owp9Owp9Owp9 Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9Owp9OwoKCmNsYXNz IEEyCnsKICAgIHN0ZDo6c2hhcmVkX3B0cjxBMTExMTExMTExMTExMTE+IGExcHRyOwogICAgQTIo KSB7QTExMTExMTExMTExMTExIGExOyBhMXB0ciA9ICZhMTt9Cn07CgojZGVmaW5lIEFOX0JPRFkx MTExMTExMTExMTExICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKICAgIEExMTExMTExMTExMTExMSB4MTsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICBBMTExMTExMTExMTExMTEgeDI7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAogICAgc3RkOjpzdHJpbmcgczEoeDEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAogICAgc3RkOjpzdHJpbmcgczIoeDIpOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXApOZXN0ZWQxMTExMTExMTExMTExIG4xOyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApj b25zdCBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gdjEoMSwgYTEpOyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgxLCBuMSk7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+ ICogdjFfY3B0cigmdjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApyZXR1cm4o czErczIpOwoKaW50IEExMTExMTExMTExMTExMTo6ZjEoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjIoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjMoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjQoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjUoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjYoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjgoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjkoKQp7CiAgICBBTl9CT0RZMTExMTExMTEx MTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTo6ZjEwKCkKewogICAgQU5fQk9EWTExMTExMTEx MTExMTE7Cn0KCgppbnQgbWFpbjExMTExMTExMTExMTEoaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkK ewogICAgQU5fQk9EWTExMTExMTExMTExMTE7Cn0KCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLwoKY2xhc3MgQTExMTExMTExMTExMTExMQp7CiAgICBpbnQgZjEoKTsKICAgIGludCBmMigp OwogICAgaW50IGYzKCk7CiAgICBpbnQgZjQoKTsKICAgIGludCBmNSgpOwogICAgaW50IGY2KCk7 CiAgICBpbnQgZjcoKTsKICAgIGludCBmOCgpOwogICAgaW50IGY5KCk7Cn07CgpjbGFzcyBOZXN0 ZWQxMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTExCnsKY2xhc3MgTmVz dGVkMTExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExMQp7CmNsYXNzIE5l c3RlZDExMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMTEKewpjbGFzcyBO ZXN0ZWQxMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTExCnsKY2xhc3Mg TmVzdGVkMTExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExMQp7CmNsYXNz IE5lc3RlZDExMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMTEKewpjbGFz cyBOZXN0ZWQxMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTExCnsKY2xh c3MgTmVzdGVkMTExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExMQp7CmNs YXNzIE5lc3RlZDExMTExMTExMTExMTExCnsKY2xhc3MgTmVzdGVkMTExMTExMTExMTExMTEKewpj bGFzcyBOZXN0ZWQxMTExMTExMTExMTExMQp7CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTExCnsK Y2xhc3MgTmVzdGVkMTExMTExMTExMTExMTEKewpjbGFzcyBOZXN0ZWQxMTExMTExMTExMTExMQp7 CmNsYXNzIE5lc3RlZDExMTExMTExMTExMTExCnsKICAgIEExMTExMTExMTExMTExMTEgbTE7Cn07 Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07Cn07 Cn07Cn07Cn07CgoKY2xhc3MgQTIKewogICAgc3RkOjpzaGFyZWRfcHRyPEExMTExMTExMTExMTEx MTE+IGExcHRyOwogICAgQTIoKSB7QTExMTExMTExMTExMTExMSBhMTsgYTFwdHIgPSAmYTE7fQp9 OwoKI2RlZmluZSBBTl9CT0RZMTExMTExMTExMTExMTEgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgQTExMTExMTExMTExMTExMSB4MTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg ICBBMTExMTExMTExMTExMTExIHgyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMxKHgxKTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgIHN0ZDo6c3RyaW5nIHMyKHgy KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKTmVzdGVkMTEx MTExMTExMTExMTEgbjE7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCmNvbnN0IHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiB2MSgx LCBhMSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKY29uc3Qgc3RkOjp2ZWN0b3I8 c3RkOjpzdHJpbmc+IHYxKDEsIG4xKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApz dGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gKiB2MV9jcHRyKCZ2MSk7ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCnJldHVybihzMStzMik7CgppbnQgQTExMTExMTExMTExMTExMTo6ZjEo KQp7CiAgICBBTl9CT0RZMTExMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTExMTExOjpm MigpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTExMTExMTE6 OmYzKCkKewogICAgQU5fQk9EWTExMTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTExMTExMTEx MTo6ZjQoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTExMTE7Cn0KCmludCBBMTExMTExMTExMTEx MTExOjpmNSgpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTExMTsKfQoKaW50IEExMTExMTExMTEx MTExMTE6OmY2KCkKewogICAgQU5fQk9EWTExMTExMTExMTExMTExOwp9CgppbnQgQTExMTExMTEx MTExMTExMTo6ZjcoKQp7CiAgICBBTl9CT0RZMTExMTExMTExMTExMTE7Cn0KCmludCBBMTExMTEx MTExMTExMTExOjpmOCgpCnsKICAgIEFOX0JPRFkxMTExMTExMTExMTExMTsKfQoKaW50IEExMTEx MTExMTExMTExMTE6OmY5KCkKewogICAgQU5fQk9EWTExMTExMTExMTExMTExOwp9CgppbnQgQTEx MTExMTExMTExMTExMTo6ZjEwKCkKewogICAgQU5fQk9EWTExMTExMTExMTExMTExOwp9CgoKaW50 IG1haW4xMTExMTExMTExMTExMShpbnQgYXJnYywgY2hhciogYXJndltdKQp7CiAgICBBTl9CT0RZ MTExMTExMTExMTExMTE7Cn0KCgo= --000000000000f4f3e505ba031840-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 29 Jan 2021 08:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161191039427023 (code B ref 45518); Fri, 29 Jan 2021 08:54:02 +0000 Received: (at 45518) by debbugs.gnu.org; 29 Jan 2021 08:53:14 +0000 Received: from localhost ([127.0.0.1]:51130 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l5PWj-00071n-Pw for submit@debbugs.gnu.org; Fri, 29 Jan 2021 03:53:13 -0500 Received: from mout.gmx.net ([212.227.15.15]:46077) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l5PWg-00071W-Aw for 45518@debbugs.gnu.org; Fri, 29 Jan 2021 03:53:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1611910383; bh=5/sPaO4ErDrdWHcCooyZhFAkYYR2n08gY7EuGGDV2L8=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=MwJOIFx6PPGKYySGNSfv5RBqgSDcLjXrSX0+K17gJQIeRD2NYLs0+naZFGGkXeih8 nq2umNQVaXdzFYRGWkgpH9WZTx8wvw/Ftxq7fK/njHnPQX6s/ktCSmNQ9/i2TNRaAD sRJ/7MVClS6fSAKjPe94GWv1mMAymmdbuwp01rTQ= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.91.249.101]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M72oH-1l3UeG1COd-008blm; Fri, 29 Jan 2021 09:53:03 +0100 From: Michael Albinus References: Date: Fri, 29 Jan 2021 09:53:02 +0100 In-Reply-To: (Duncan Greatwood's message of "Thu, 28 Jan 2021 21:15:38 -0800") Message-ID: <87wnvw3z0x.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:bIh99SMD588zJ7UDjBOOSENykKBXhR8eyWXxZFb4DfsUVxNe67F C5qEYgXbf6jadqvomGRC/9vFeV+3/htQAfyb68UFttCkXX3TUufrgC0kMnTGcbxvZoxkAAa bHbv7l+AuGOYk5SBynAPzI4JysFPLzxjeZQ5LoAtL+9HwjQ0FGPv2xSY6VzSU5XbJSBMnlI Bkr13f9oXdIOq0HOseL5g== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:8zizQ/DtiLE=:ccAaNlDVt3Tn6XQSY9ts+2 a0o0slC7fybeob82vuwPZhAg1QFO+9+r4xeZ9Uq49fWh1I6daiUYaYvqXXjcZztXXOhSYzDJ8 CXUoEDHccpViMhYVP6DO71HCTlB8RgESs3xOdW5E3KzFs/cxF2WXtJvPhCscMaTtwEhj8vUYx G3PjTRyX7Gxtqog84MjR0Pklu1OjTRXidKkfcx0eBETyAK0e53oip8wcia6xVE7s1JzAog79B fbE+HwQyalwFt92TRe/lfHwZLsBbM8I/JuMzi5jAPl8DOOhQFpHnzLN/sa0+g2gW6pK9dINfL NL1Sb0cv0DTKyKu4ONOQ9IQAaLavfwImtkOdIuMjv1mQjJV9ez9n6EYIzhmCzXPFRIyTJSbmk dje7XNQ34lU5oQcpHSKA3gM7HQu+X76o9n0+7MZWOCJjj1d85q3h4+Jp4MqfZvYmXikkSoJU6 zYm8b+DweUG70/eQ8OSd7HfAma8t0FiujL9EKMrQ75s7+CKSrw21/f1cMzTzWWY5fr533fOo+ 1a2YICmOk/o9O8jlB5h1g/SobpkfKFE5Vd7/kVxa16fe09AmbQ34P/SESjalhBOR3oN68J5gn yj4wpYRHK8BS4Hv+Yk9WBNcS7KdddZ7ZCi8bmllZuLEy+FYpHvnJm9aGqijwcldYyy/tjY891 JkNXlvxVcsFiHPRPGaCneGOPUoJnowq8O5rUdg8pn2T/FePDmuiTZZkHsc3NBcOCHYnZrZfg0 iIkzrJ8avU0s0o5dSdw/gu/ohlJLcRXOB2bZvg+Hxm+D4sRHBnsksFwqGUd76pN8UuEbrzoP1 K2aL7pA8meYgonsPAhliJs/QYRlMLl8THYxho+xk1RGEAewwB61pGYPsgr4dzuBSnWFuT7ZMs ccsivXpdU4da5uPfpsoA== X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Duncan Greatwood writes: > Hi Michael - Hi Duncan, > Good news! The patch for compile.el, applied to Emacs 27.1, fixes the > issue of the tramp window hanging in my test cases, running tramp from > MAC. Thanks for the feedback. I've pushed the patch to Emacs' master branch (aka Emacs 28.0.50). For Emacs 27.2 it is too late, it is already in pretest, and only fixes for serious regression bugs are possible. > There is still one tramp hanging issue I saw in my testing. This is a > much less serious issue (pressing ctrl-G once "unhangs"), but thought > I'd mention it here. LMK if you'd prefer a separate bug report and > I'll create one. I will have a look on this next days, as time permits. No, I don't need a new bug report. > Thanks again for fixing the main hanging issue! > Duncan. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 10 Feb 2021 15:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161297164921281 (code B ref 45518); Wed, 10 Feb 2021 15:41:01 +0000 Received: (at 45518) by debbugs.gnu.org; 10 Feb 2021 15:40:49 +0000 Received: from localhost ([127.0.0.1]:56930 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l9rbl-0005XB-0j for submit@debbugs.gnu.org; Wed, 10 Feb 2021 10:40:49 -0500 Received: from mout.gmx.net ([212.227.17.20]:60153) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l9rbh-0005Wv-LO for 45518@debbugs.gnu.org; Wed, 10 Feb 2021 10:40:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1612971638; bh=qoxPVVSYHIeTCx+yJw2AnvS+xjduTu7qXxlTJfRJPNE=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=UySxnTPoAH17CBhFd0d/pfyIfie5PoxVITmHKO8bC45VYN9g6XNr7PiIMcI9+RjDs CBWUUFwEdhWBYLxbjOxkA/2k0TdAAPM+aYaMlVW58ith/TBCwOOlsfJppamCbhr+/g 68wdTBlog/5iw7P5d3f9XLi6nq58aheGbzAi63nk= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([79.140.117.252]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MjS9C-1lbjIa2oOY-00kt6O; Wed, 10 Feb 2021 16:40:38 +0100 From: Michael Albinus References: Date: Wed, 10 Feb 2021 16:40:37 +0100 In-Reply-To: (Duncan Greatwood's message of "Thu, 28 Jan 2021 21:15:38 -0800") Message-ID: <87wnvgaq2y.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:ZU5BMMcj32xEOcuJWy+H9ZDxicm2jT/uRC84dSbfESKb13W7F7G RDUNPG1ByY5mZ6Yht1Pw8s5+ezcUGN5j3MJ+ymaO8H+7zLhZ2eO+aqEVaapebkf5Kv2mGlj DIb9Hi69/XGgYUMlePt1guKP+YzYcNerjUty1u6dg8yH6cdIz/rR4XQbNCM3sJsoxLvdgKR ou9lc6Gzh08PjJpM4ZIQg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:j1xGvE3RoQY=:1ZzI5pGtEQvVVUQP9s17s3 QKn7T6z1D9bkDor8H9oE8Oo1eBqDe7KHA6y0DRVksxRg+OQZgiZT01sFLLtuWuqpuf+ggeJZD o64RXwC+p6mzz+OEkKk1sffxqhFArj/7CxhQJCGSYs6TIHcN9PDhSiwHEwVIBZEB+008slkk+ bueLIqFQFcexwLcpPsGPO91FoBbSlMDsiTI2dQ3YbNj8W3NyE70cmaTog3cg+j+EmgWNL24aV QwSby4OoiWHrlYnuhXW3zUnSTO/5tVqEMsm6ozwDJmzs8Ts2ReUV7lIMIx3hn2Cxurc2w5/wq 95UaLksewwpNep4AfCQd/9PQ9Vn9gslu5U+rsmwPbydhRek4Izry2/YGNZY/sbkC7PkZ3p3E/ boDtfN5F/sachifNlIwMjNHkxjbDK9+8fWSssWx0JwAk2Qq1YVAQNiAa6Z4pGuPhwHELrwZAp QlJmXg40OCPX6k2sEcqyIxiuPhmhhfF67jrl2tdA2lGCPlfkXfWnZKSrF02gQqL8X1meow4dz o7trg1oPHDO+VTPJr24hTngmivUgMVq7URcSfMRJyg/bETtoZydNY2jqfrgpBkGVPaJhsfrrY 5/E/NF3E81/X1Wq60VlPXge51cc9rfmmepVyIpbqb1aesS7qDbRMGip7xy5PAYXgIOxgar2Zi joQLTmvzsKVNEPh6KDiXpuqvZYAF4VpYctOQN/YEEy/T+MzRva314EIm3wvNqGBg2/q87U6Qz HQTTLKpEz07w8iwXQvZZCZj3LD5OK4NkLqDV22TKQSm9zICs6aY42oMpDdDUcwVpPVxzVIOme nCpWHTK4woDNn3rpcqHJr0FHmQrwbkwKcEfeANAK3XLOyt2KbwO9tmvGSlx1kfwdXog/rd1s3 Q3VJ8BV228qggcsBfeug== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: > Hi Michael - Hi Duncan, > There is still one tramp hanging issue I saw in my testing. This is a > much less serious issue (pressing ctrl-G once "unhangs"), but thought > I'd mention it here. LMK if you'd prefer a separate bug report and > I'll create one. Just an update. I've played with this for a while. I could reproduce, and I also know where it hangs. It is accept-process-output of the Tramp process which tries to view the file you have clicked on, vs accept-process-output of the compile process. Both don't cooperate sufficiently, and both hang. I have no idea (yet) how to solve. One idea would be to start the compilation process in another thread, but this will raise other problems. There is some WIP to make Tramp thread-safe, but this is stalled ATM. > Thanks again for fixing the main hanging issue! > Duncan. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 11 Feb 2021 15:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161305695817315 (code B ref 45518); Thu, 11 Feb 2021 15:23:01 +0000 Received: (at 45518) by debbugs.gnu.org; 11 Feb 2021 15:22:38 +0000 Received: from localhost ([127.0.0.1]:59113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lADni-0004VD-50 for submit@debbugs.gnu.org; Thu, 11 Feb 2021 10:22:38 -0500 Received: from mout.gmx.net ([212.227.17.20]:55391) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lADne-0004Ux-30 for 45518@debbugs.gnu.org; Thu, 11 Feb 2021 10:22:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1613056947; bh=oibAY4G+04nbRx0OGD2ai3v3O4nXiDzR9XC4/ubV384=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=jvCsD0Xy+RoJSeh6mGcIw/0SC6YKtwzLlWQ1uMv6iyttdSxGYlvhEsEyEfnugKAoR yL2uw3zDH7xuHQyblC7AF2g+j9eaw/YnaxYfUc9LzwauA2pWLKlqcV5PCCergvfFAr FM+cOCvKDsB3KOQzLEnNxC/EXycZI69LdxVxWqsM= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.51.67]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N0X8u-1m4PLj1TIC-00wUGK; Thu, 11 Feb 2021 16:22:27 +0100 From: Michael Albinus References: <87wnvgaq2y.fsf@gmx.de> Date: Thu, 11 Feb 2021 16:22:26 +0100 In-Reply-To: <87wnvgaq2y.fsf@gmx.de> (Michael Albinus's message of "Wed, 10 Feb 2021 16:40:37 +0100") Message-ID: <87sg62bpe5.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:p8aGRt80VM9FHaaEdA4nCjz0o8cwBfmxQEFGGUchVtXrEWHCNAm qQVYKPO2vgjiOAVPWyiVMULBrvjAnk/hsG7CKuX79dAPvKowf90WCzwleLwKZtq9nhWYyv6 utppkYYUElqxsmL54AflBlUTgH0nV+zhoso8RPVz6555wcp/PrdKakb5OBuomNjMlvMN7+w ea/Y905H8FJQderSlAcDA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:o4jW6N3mbAM=:fsCe9gKtDC8Y1vTBhJ+KtX 5vNq8d4MEH2nqkmarG77JZfYMf4rgSoTInIlTj4vNcpSRntmdC/gEXekxdQajfGzMgcQOfxpN 5Dtq+cLx7uU3PbXSst4ksq2QdsoL38CDXW2QhKeeNqd6fSOJo7mAIZt7cL2Ekkg+hjMLQHpBU iyqaIoueDhoTVOLIhtkMtylUWBN01zr3zJB8PaVnOpo8QerWjS9LzRPHX04lbSinCF8x7xPRy oc/b3/ganqscszMRdUMUG2WfNMBY8bivM8Av0JdFZm/0u+UqbEvEHcqcirPp5T6Y61WmdF/ed ZOH3g8nr07wMT5ei9TmaJVJ/ZGR149/MHMP7gEh8h+aP9KJlbYpILiFjmyawkpcviHjAG/UDF uwnlUMfiLYxNhQ71UiJUZbOGHZEaoCibASajlTqcctVUsrXgH2Me2X1E4zHfYS4mwza3MnOlb OF0WCUyRPUHybiwQN1gw69oT2yiPy+/Vg+WKC3hckpY6Jw3iYcUMrUhACi0nPPNcbWnrvSXIr MTyTgb1nkdk1LBoOJ8EidTkXJMnfPFauqL4sq3TEDoEHudn0BAsAgmIUdFRL85HjVhhAV+DPh zNn/oTLvQfTrmbhSLSMyvA1tdzKvp5eIpM4A2vjx+CMBM+K9o8nbqikO7VJ2Alr7KdmVXWlx0 pJZLl0Eg7r/0wiIi1/Oneqs4fsGEzBNPF9i8vYeHCxtRUSKoUnujVsIZY17K1+r+esepg5R14 DrFxFanJ6fPCi2yjdVpwR3NhMt/Rj9LAoKyT0RNZP+Lgxys2uAIOtNUBYCmTAdaQOXtOU0/Nb y79eWzQehW+gtBrqEWVdrw1h/a1kOEjiO20tjA7tsE93XIQaEYA0prItO4wpmPV6+gj+KT4/3 ImTX4Fr/OviL3oqzkXxA== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain Michael Albinus writes: Hi Duncan, >> There is still one tramp hanging issue I saw in my testing. This is a >> much less serious issue (pressing ctrl-G once "unhangs"), but thought >> I'd mention it here. LMK if you'd prefer a separate bug report and >> I'll create one. > > Just an update. I've played with this for a while. I could reproduce, > and I also know where it hangs. It is accept-process-output of the Tramp > process which tries to view the file you have clicked on, vs > accept-process-output of the compile process. Both don't cooperate > sufficiently, and both hang. > > I have no idea (yet) how to solve. One idea would be to start the > compilation process in another thread, but this will raise other > problems. There is some WIP to make Tramp thread-safe, but this is > stalled ATM. Since I don't know a general solution yet, I have prepared a small patch, which suppresses visting remote files as result of a compilation. Silently. When compilation has finished, everything is back to normal. See the appended patch, whether it makes the situation better for you. >> Thanks again for fixing the main hanging issue! >> Duncan. Best regards, Michael. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment Content-Transfer-Encoding: quoted-printable *** /tmp/ediffuS9ebt 2021-02-11 16:14:54.793873579 +0100 =2D-- /net/ford/albinus/src/tramp/lisp/tramp-integration.el 2021-02-11 16:= 10:01.276681568 +0100 *************** *** 261,266 **** =2D-- 261,294 ---- (delete (info-lookup->mode-cache 'symbol ',mode) (info-lookup->topic-cache 'symbol)))))))) + ;; Compilation processes use `accept-process-output' such a way that + ;; Tramp's parallel `accept-process-output' blocks. See last part of + ;; Bug#45518. So we forbid them to run in parallel. There must be a + ;; better solution, though. + (with-eval-after-load 'compile + (add-hook 'compilation-start-hook + #'tramp-compile-advice-add) + (add-hook 'compilation-finish-functions + #'tramp-compile-advice-remove) + (add-hook 'tramp-integration-unload-hook + (lambda () + (remove-hook 'compilation-start-hook + #'tramp-compile-advice-add) + (remove-hook 'compilation-finish-functions + #'tramp-compile-advice-remove)))) + + (defun tramp-compile-advice-add (proc) + "Don't allow remote file operations while compiling." + (with-current-buffer (process-buffer proc) + (when (file-remote-p default-directory) + (advice-add 'ignore :override 'compile-goto-error)))) + + (defun tramp-compile-advice-remove (buffer _message) + "Reenable remote file operations." + (with-current-buffer buffer + (when (file-remote-p default-directory) + (advice-remove 'ignore 'compile-goto-error)))) + ;;; Default connection-local variables for Tramp: ;; `connection-local-set-profile-variables' and ;; `connection-local-set-profiles' exists since Emacs 26.1. --=-=-=-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 14 Feb 2021 01:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus , 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161326670713141 (code B ref 45518); Sun, 14 Feb 2021 01:39:02 +0000 Received: (at 45518) by debbugs.gnu.org; 14 Feb 2021 01:38:27 +0000 Received: from localhost ([127.0.0.1]:35275 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lB6Mk-0003Pt-Rj for submit@debbugs.gnu.org; Sat, 13 Feb 2021 20:38:27 -0500 Received: from mail-il1-f182.google.com ([209.85.166.182]:37224) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lB6Mh-0003Pd-2t for 45518@debbugs.gnu.org; Sat, 13 Feb 2021 20:38:24 -0500 Received: by mail-il1-f182.google.com with SMTP id d20so2727315ilo.4 for <45518@debbugs.gnu.org>; Sat, 13 Feb 2021 17:38:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=u2MO+rUuCLmc1zeBGsRqUrS+XO1YtE2FfBd5/+r470I=; b=RUHb3TFOxVgXaKJ06PfG+eXpXFzY+XOjk75GUXBz4fyaVL+SUi7Teqsr+LJs0Wy0aA IkK3WhkVtLqE3MZnqvwdO1Cb9vH6Lr1GxKd9c7ZgJIIAFSyrWVRDDHU4sxkqMDg3oHst m5Kj2bQk6DWdeLx7875JxN9pj6FA1Pst9zRSz19qj0Cuz/g02zD6HQ/4pfZMO42sHrTh nyPapUSLxmDu1ufUhZBDh4qoMo9cTq3AnxPNkiH8kZheE+jmGYsYwd/tOxbrXX+uYFCq t130n6rkBSzyX32RaQna2fyNtK5TqNZKzkgXi5IgcnW1ng60zYt8z04aq21wIVe+KVu3 s4cw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=u2MO+rUuCLmc1zeBGsRqUrS+XO1YtE2FfBd5/+r470I=; b=AJ06N3cYGnqVBCkkBOLL4exmk45Xq7933Csx6JQPWQ9t9GWAM5g6HLsV6txwX+SBrF BGFupBnTszufSR19PYcRvRnbh40g5BhvPhldqXoS2KDj9gkPzPDO8k9eDbdE0uXUnI+o HL5zt2QGsZJ/5P7MPTEXek6mJGngFGtUBLgmIO+D+m6sUC8BDxGgr1/BmApO2lg9OG4h AJVPep5tBuYn3ilGToqrIzxfjQjbPqQRyJJNZAg3AHXL/niUdo/6hODiYAIDyqUpSNLF RXP4adwZAs/ln9OzcNUlLz5yGcfBOmRC/GbUU1ZN5k4W0G+yD/jsEUg0ftSMVa7x//0V op4Q== X-Gm-Message-State: AOAM533u3FgezpURVnHb3XKqrNo5Rgm5vIXwlC2DcdBBswkJa5BunesH lhC7Db0V8B7tPPwcX9cqrKtu17jyiKRV2iTQl4Q= X-Google-Smtp-Source: ABdhPJzrQohFSnsi7e5VHvdWEE/SP+8zGP7lBse/X2+VWQDcA5CizoXjOPbFrP6gukDkrXvw1nXzRPj6v9Yo7VeONgw= X-Received: by 2002:a05:6e02:1608:: with SMTP id t8mr8079125ilu.79.1613266697521; Sat, 13 Feb 2021 17:38:17 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Sat, 13 Feb 2021 17:38:06 -0800 Message-ID: Content-Type: multipart/alternative; boundary="0000000000006f0f3105bb41ecba" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000006f0f3105bb41ecba Content-Type: text/plain; charset="UTF-8" Hi Michael - On Thu, Feb 11, 2021 at 7:22 AM Michael Albinus wrote: > Michael Albinus writes: > > Hi Duncan, > > >> There is still one tramp hanging issue I saw in my testing. This is a > >> much less serious issue (pressing ctrl-G once "unhangs"), but thought > >> I'd mention it here. LMK if you'd prefer a separate bug report and > >> I'll create one. > > > > Just an update. I've played with this for a while. I could reproduce, > > and I also know where it hangs. It is accept-process-output of the Tramp > > process which tries to view the file you have clicked on, vs > > accept-process-output of the compile process. Both don't cooperate > > sufficiently, and both hang. > > > > I have no idea (yet) how to solve. One idea would be to start the > > compilation process in another thread, but this will raise other > > problems. There is some WIP to make Tramp thread-safe, but this is > > stalled ATM. > > Since I don't know a general solution yet, I have prepared a small > patch, which suppresses visting remote files as result of a > compilation. Silently. When compilation has finished, everything is back > to normal. > > See the appended patch, whether it makes the situation better for you. > [DG] I have applied the patch to tramp-integration.el. The earlier patch in this thread (to compile.el, fixing the main hang) was also applied. Unfortunately, the symptoms for this secondary "minor" hang are unchanged for me. This is on an Intel Mac running macos 11.2. GNU Emacs 27.1 (build 1, x86_64-apple-darwin20.3.0, NS appkit-2022.30 Version 11.2 (Build 20D64)) of 2021-02-13 I looked at ./Contents/Resources/lisp/net/tramp-integration.elc inside /Applications/Emacs.app and it seemed to contain the patch as expected - at least it contains the string: Don't allow remote file operations while compiling I'm not sure what's up, but LMK if there's anything I can do. --0000000000006f0f3105bb41ecba Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Michael -

On Thu, F= eb 11, 2021 at 7:22 AM Michael Albinus <michael.albinus@gmx.de> wrote:
Michael Albinus = <michael.alb= inus@gmx.de> writes:

Hi Duncan,

>> There is still one tramp hanging issue I saw in my testing. This i= s a
>> much less serious issue (pressing ctrl-G once "unhangs")= , but thought
>> I'd mention it here. LMK if you'd prefer a separate bug re= port and
>> I'll create one.
>
> Just an update. I've played with this for a while. I could reprodu= ce,
> and I also know where it hangs. It is accept-process-output of the Tra= mp
> process which tries to view the file you have clicked on, vs
> accept-process-output of the compile process. Both don't cooperate=
> sufficiently, and both hang.
>
> I have no idea (yet) how to solve. One idea would be to start the
> compilation process in another thread, but this will raise other
> problems. There is some WIP to make Tramp thread-safe, but this is
> stalled ATM.

Since I don't know a general solution yet, I have prepared a small
patch, which suppresses visting remote files as result of a
compilation. Silently. When compilation has finished, everything is back to normal.

See the appended patch, whether it makes the situation better for you.
<= /blockquote>
[DG] I have applied the patch to=C2=A0tramp-integration.el= . The earlier patch in this thread (to compile.el, fixing the main hang) wa= s also applied.

Unfortunately, the symptoms for th= is secondary "minor" hang are unchanged for me.=C2=A0
T= his is on an Intel Mac running macos 11.2.
GNU Emacs 27.1 (build = 1, x86_64-apple-darwin20.3.0, NS appkit-2022.30 Version 11.2 (Build 20D64))= =C2=A0=C2=A0of 2021-02-13
I looked at=C2=A0./Contents/Resourc= es/lisp/net/tramp-integration.elc inside=C2=A0/Applications/Emacs.app and i= t seemed to contain the patch as expected - at least it contains the string= :
=C2=A0 =C2=A0=C2=A0Don't allow remote file operations while= compiling
I'm not sure what's up, but LMK if there's= anything I can do.
=C2=A0
--0000000000006f0f3105bb41ecba-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 14 Feb 2021 14:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16133121453862 (code B ref 45518); Sun, 14 Feb 2021 14:16:01 +0000 Received: (at 45518) by debbugs.gnu.org; 14 Feb 2021 14:15:45 +0000 Received: from localhost ([127.0.0.1]:35647 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lBIBc-00010D-T7 for submit@debbugs.gnu.org; Sun, 14 Feb 2021 09:15:45 -0500 Received: from mout.gmx.net ([212.227.17.20]:45579) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lBIBa-0000zz-IO for 45518@debbugs.gnu.org; Sun, 14 Feb 2021 09:15:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1613312136; bh=9/TzvdTLPNW3LE+ibssD+Yh1hOIRY/HM/1c1Dc8V7WY=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=jyGL5eqHwOuFyDqBTEiRKOYaZX0Css/yC2VwyEVl/5rUTk2zGsErK9i7ODQlyzP30 dqQ+a0qmgB/L2kZtsgic+A+Y6LCULirOZ8ceC0+YR/nyRHnFQkEi88qZoYxRC5ogEy XN50Z+bFdNxgiZGOKMLnzQHNL6vh8qtfKDYLlt00= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.41.7]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N6KUT-1lvNXS3YIj-016hGq; Sun, 14 Feb 2021 15:15:36 +0100 From: Michael Albinus References: Date: Sun, 14 Feb 2021 15:15:34 +0100 In-Reply-To: (Duncan Greatwood's message of "Sat, 13 Feb 2021 17:38:06 -0800") Message-ID: <878s7qburd.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:acKqxXYLo4zfZjtTy2UvH8iI4ab9gLr+RIcrwNV0HydKUWN79YR jDRSz1GLLrL46gL7jYRgFRGAnKLohyaBzOvY16EFG1X1T/+NBHqloTn9DXbQUiKwWeRBKNC QH3kiktzjT+ShROLPiCLOFzj8A7iNyDYm9m5adNqLIboXhCjniPZ+CQ7YxrrgV9ayPrrx0e eYMlYQZS3j3oJq2ERGulw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:BnAuLMIF3Q8=:0IELA2i11p6AIlvpumdGaJ hr2UrQ6Mo6lHOuWMRh8jFtWGLlvLJAffbd+k6QlAEh54745Tc9OcTi6BiFq4q+0lxooO31rYo faXhnfQiOw6sD0o5QkC1DjP261GrNlGDi2pd8LeFWVyAB0gdzAwvHhK92aaLDIbbJVZM7GgmC 1Euan/f2CDnun5qZjkdteF6opG/XkcMOCT5fmC7hD6ktn/1al9lBMkzRaLRVkX0csnRjMyYV0 g2pdRkGVmz14OLIiTFy70iqDxFFmYS3hqdrra4ylvuHw8jyEai5p56Dtf5lY9FgtUWsp57rfD yfuMUWJDZ1+MZIWVyrR0RB92W4Vt4HcJd7Gikh+jy1VE8TdAjur+sGGI9tjTarcbQYnOMHSqr A04AHYBiPyByphGmxL+iUnHxsUg2LQ5+zhTAdY/yY7z9zOqTGcnqKPJCVEQnRkiXXgeaXO36N v5igtNkX3rm6Ojl3JGUBVzkudjc1ijxC2rN/0j9iaaZaSyC9goTlTFHEkPyuJMvjB7JOvNPUW VuJME19Vxb9pTrTEblpCE0IEViShRZ8jlBhFcz4TEpQbUGKEHnkR2+RUVrpmuXN7vnyHkxcF+ KkPk/5UeDHF3IhSeiGdk0PZyaIiAK6HuD75ngEYsVWvjnxbHQpf/GoBTRV9jo8KAIVzY+OgfD kDzW90rFlHqXQ1LDpafBfVzFCwrRVb5csVYZAoNDo3KmDbR9tVcmc9LINGJvepDD/pMrQ5Gc0 6XriaYrgNOKSm9Y1CTykFIbXh7/2v1HRM+lfO2IWIxtO7WUY2ubgdPq1OkHSSPR4i5rGC7E+h /u2DN20HISSaSx6esdCpWEojbNxxdBShebztQtvkUAx16ypqjSZncle9dcbmm7Qc2PtCb3aJz 3qpD6B4I96Pzcgmv1DRA== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: > Hi Michael - Hi Duncan, > [DG] I have applied the patch to tramp-integration.el. The earlier > patch in this thread (to compile.el, fixing the main hang) was also > applied. > > Unfortunately, the symptoms for this secondary "minor" hang are > unchanged for me. I've tried it with a modified Emacs 27.1 (compile.el), it works for me. > I looked at ./Contents/Resources/lisp/net/tramp-integration.elc inside > /Applications/Emacs.app and it seemed to contain the patch as expected > - at least it contains the string: > Don't allow remote file operations while compiling > I'm not sure what's up, but LMK if there's anything I can do. You might check, whether the patch has applied at runtime. Check, whether the two functions are defined: 'C-h f tramp-compile-advice-add' and 'C-h f tramp-compile-advice-remove'. Well, the function names are silly; I shall give them better names when pushing the patch. Check, whether the two hook variables have changed: 'C-h v compilation-start-hook' (should contain tramp-compile-advice-add) and 'C-h v compilation-finish-functions' (should contain tramp-compile-advice-remove). Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 15 Feb 2021 20:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161342051317297 (code B ref 45518); Mon, 15 Feb 2021 20:22:01 +0000 Received: (at 45518) by debbugs.gnu.org; 15 Feb 2021 20:21:53 +0000 Received: from localhost ([127.0.0.1]:38792 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lBkNU-0004Uv-RO for submit@debbugs.gnu.org; Mon, 15 Feb 2021 15:21:53 -0500 Received: from mail-io1-f48.google.com ([209.85.166.48]:40393) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lBkNS-0004Ua-Nv for 45518@debbugs.gnu.org; Mon, 15 Feb 2021 15:21:51 -0500 Received: by mail-io1-f48.google.com with SMTP id i8so3688166iog.7 for <45518@debbugs.gnu.org>; Mon, 15 Feb 2021 12:21:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=UfMYYrzsFqNdoiGhLydifpVL+SLnIHry5oWLCDqeKiw=; b=WucYv89wwSvJFcfGbnhBfIxl9/ng7dKoyHS0qs/7DKYTHTLT0kgKgJx7chEyomPnbq AOb1sROGnLO9pDcYF85swZOG404n69ea9/h78MtexvXmfeb1hME7RGKabwnkDmpTH+5W 20scGJ+ib9yEjWpi9ikmLoY1twcL8daOSfuoTcZsi7XnqOSjivIpoRNyL0SKVeJF5xch dX7YbBwD1pchNLHGUOQUe5dJtRejVU1CWZjLdDp6xzQZMGSP+snN9Q6/l5yv4B+irN1U R2IP12Twkilc7jeycNCIVWKh1sV4RrndYiKMpS8ZvJHDmFP0cPOZgHPDGVAAJ6O3gi7z NoAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=UfMYYrzsFqNdoiGhLydifpVL+SLnIHry5oWLCDqeKiw=; b=mvrTNYD8Xu7RJUhmmIJjj9CPKsgrAw6jpbL2lHj7YhoTG2Ij4uQHpBVYoieY3Ps34a gKGVYmAcoyotkLZvkhTIDrUMxT5Cb7ZqdlTPedWF15dkXR8V3drgGWG6jwDkpvYTJ+lD qlsi2TVRXLYtWSPKkYo8jFjbA0wliEoy4gOX0rK/kuoZ7R7EwwJF9a7gizV3ETborVhZ iRAg+ecyjUPKiA2dvdPL35E6LpZgU1Mfaxw9S3pnDnRc9tJ2vQYG7tGL89IA1W7DwtcM B3HyVSV83QBvGxTvi/feTpChpbX2ewcgO0aXUm4Wfp4Bt/UmkHO0k8Ea4jcyJGsehb3w q2Wg== X-Gm-Message-State: AOAM532vmOaL9tLK30z4UB9L7biqC3RoRtf63HWgNsM6OhWuj2fA2t01 5f2EY2GLVAHITVNnKGTEyYByz/8/E9oy98wxViY= X-Google-Smtp-Source: ABdhPJxH26U6NNBWRtX+xRbRiAgK33j+/e60qoawzMbctwkQJNoQUH6/Y1rGnpcbsxwJGeunKC4mqmv7SVLfZukFFW0= X-Received: by 2002:a5e:dd09:: with SMTP id t9mr8170949iop.57.1613420505052; Mon, 15 Feb 2021 12:21:45 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 15 Feb 2021 12:21:34 -0800 Message-ID: Content-Type: multipart/alternative; boundary="00000000000013b7fc05bb65bcdc" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000013b7fc05bb65bcdc Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Michael - You might check, whether the patch has applied at runtime. [DG] Thanks for the pointers. C-h f tramp-compile-advice-add looks fine: tramp-compile-advice-add is a compiled Lisp function in =E2=80=98tramp-integration.el=E2=80=99. (tramp-compile-advice-add PROC) Don=E2=80=99t allow remote file operations while compiling. Remove looks fine also. 'C-h v compilation-start-hook' looks fine: compilation-start-hook is a variable defined in =E2=80=98compile.el=E2=80= =99. Its value is (tramp-compile-advice-add) Original value was nil This variable may be risky if used as a file-local variable. You can customize this variable. Documentation: Hook run after starting a new compilation process. The hook is run with one argument, the new process. and compilation-finish-functions also looks as expected. Unfortunately, I am still seeing the hang upon clicking on an error message while the compilation continues. Sorry to report, but it may actually be worse than before, in that I am seeing some outright crashes of emacs, i.e. hangs where I cannot recover by pressing ctrl-G multiple times. I didn't see that previously with this issue, though of course it's possibly just a coincidence that I did not. JFYI, I am also seeing this error message displayed immediately after compilation commences: Error adjusting window size: (wrong number of arguments (0 . 1) 2) Best regards as always. Duncan. --00000000000013b7fc05bb65bcdc Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Michael -

You might check, whether the patch has applied a= t runtime.=C2=A0
[DG] Thanks for the pointers.=C2=A0
=

C-h f tramp-compile-advice-add looks fine:
tramp-compile-a= dvice-add is a compiled Lisp function in
=E2=80=98tramp-integration.el= =E2=80=99.

(tramp-compile-advice-add PROC)

Don=E2=80=99t allo= w remote file operations while compiling.
Remove=C2= =A0looks fine also.

'C-h v=C2=A0compilation-st= art-hook'=C2=A0looks fine:
compilation-start-hook is a variable= defined in =E2=80=98compile.el=E2=80=99.
Its value is (tramp-compile-ad= vice-add)
Original value was nil

=C2=A0 This variable may be risk= y if used as a file-local variable.
=C2=A0 You can customize this variab= le.

Documentation:
Hook run after starting a new compilation proc= ess.
The hook is run with one argument, the new process.
and=C2=A0compilation-finish-functions also looks as expected.
<= div>
Unfortunately, I am still seeing the hang upon clicking = on an error message=C2=A0while the compilation continues. Sorry to report, = but it may actually be worse than before, in that I am seeing some outright= crashes of emacs, i.e. hangs where I cannot recover by pressing ctrl-G mul= tiple times. I didn't see that previously with this issue, though of co= urse it's possibly just a coincidence that I did not.

JFYI, I am also seeing this error message displayed immediately aft= er compilation commences:
Error adjusting window size: (wrong number of argu= ments (0 . 1) 2)

Best regards as always.Duncan.


--00000000000013b7fc05bb65bcdc-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 16 Feb 2021 20:10:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161350617411423 (code B ref 45518); Tue, 16 Feb 2021 20:10:01 +0000 Received: (at 45518) by debbugs.gnu.org; 16 Feb 2021 20:09:34 +0000 Received: from localhost ([127.0.0.1]:41671 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lC6f7-0002yB-Ov for submit@debbugs.gnu.org; Tue, 16 Feb 2021 15:09:33 -0500 Received: from mout.gmx.net ([212.227.17.21]:47265) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lC6f6-0002xz-DZ for 45518@debbugs.gnu.org; Tue, 16 Feb 2021 15:09:32 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1613506166; bh=zp9NrF5xVndcrPyTi5ujbuqiaZ1SF/xs/Ko3a3nwNQE=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=b5S7P6g3gFWRYMywh3ScYLdhqz3Or6gz06yFUHG/b/OUelOsIAiXj2rlNzTePMkSL /gSpB18AEMVZoGCpvQk5iJ3dDYJBzRkA49zSqwk5yoQWdtNQW/KBSittzO3DIKCJZi 997IyHT30AglzB/d8lVAbhji1vkAn/w+9bJJxlyw= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([213.220.145.132]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MKKYx-1lRInS2qhb-00LlyS; Tue, 16 Feb 2021 21:09:25 +0100 From: Michael Albinus References: Date: Tue, 16 Feb 2021 21:09:24 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 15 Feb 2021 12:21:34 -0800") Message-ID: <87y2fnu64r.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:2o0SaQoxovPO9yTQaMFTbDekDxOfjPVUuh4yPUvs+WdYwP1uU9O Nz+EDgO9uYrpkyCFY3GiWYA+zH/uVdkYcXaBMhidc42Cfm1b2Et5prMDu5VsYumylYDxlYO AFMWpCcwOhMXtqu1uv905GRcLD1vGpnBif4BZ3CXNcvtlcQpdhDpWQGvOrdkfcLMOB12aI4 9HAaqGmP4uZmDfoe89Djw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:8g/+6O5QniI=:RYg5qnDnbhb73HuDjIl5+w JXE+PrbmlIRcNylqpz1qu5cGWMHq+AcsnALtbBypa4EtoZYMuOOy1J+UxnEYjzpoQGHOWdOJi JsCjJc9oj+XN4fhne8BCd2ACnoCneS8EozXGK8udRV7k/vqkQtGMoY9UjlbjIgVWL7Z0CPLIA vuLZS45/F3I5OFZ44449usBt54mU7KvW4QA2x9xK6UE7ebb098zc+XBZ4km/rxJ+jEjNYaPtt lb8mEbNpWrAbYJAb2jqjFJjJmEAXgj895FMUf86vqsGWTKyI7vyRqv1gypHKRchDNK+agksEF 3dxH/YaXPLmNo9arTo4WFSKG/WlIuBptP33eQXtlWllHJ0/tRrn+IgAv9iTb+Mvrgz6yYiQQN KMSX+SSQWgdZB705oPwPzQQXTeAFKsFyGReZ+UkAfn0d5vKkdG5QYgf7R1jKqO//Ujmzjq380 zaHAfLmTXGTV9l5OctVvw3pmaiM8BDiQzL9yohnBlhMBFOy11GNIOBoU/ISThwoMif3KIPxL3 HzvBrVTIucTCQvcDonsd5XDHpCMA1sP/x977iRU8ZC7lr5MG2Yg2gTLtuNZWm4H5jtpgcc8q+ vxCXfJvYzSqIFg0tPBBx0L7YZ/8IJVCTCez15SNqdJYWEz4JsOhgoY7txu72c6Vf5hW2U4Izy 6UoD2N/lLiAiU3HRleOZ3bNRZq4jkrVbHUvTzlGx6jI80REm/mDBz+Af5Af6PzCw+BzetTEnH vajj58SD7r0R52AfIDK1USTzaHLeDNudJ/ynXCLbtHRtmEvI9yP8eQe0fotq8+79Vg6U+Giur 6HMVFJJ3B+i24TR3soHmMDzyvM0GCN94JJapxefQwse9RqrI6tgcp4hcj/nsGf94+dQVDx7GQ B8VM847WFXEKtzs1C+0A== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: > Michael - Hi Duncan, > Unfortunately, I am still seeing the hang upon clicking on an error > message while the compilation continues. Sorry to report, but it may > actually be worse than before, in that I am seeing some outright > crashes of emacs, i.e. hangs where I cannot recover by pressing ctrl-G > multiple times. I didn't see that previously with this issue, though > of course it's possibly just a coincidence that I did not. Hmm, just to be sure: you run Emacs 27.1 with the patched compile.el, and you run Tramp 2.5.0.1 from GNU ELPA, with the patch in tramp-integration.el? > JFYI, I am also seeing this error message displayed immediately after > compilation commences: > > Error adjusting window size: (wrong number of arguments (0 . 1) 2) That seems to be unrelated, but who knows ... > Best regards as always. > Duncan. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 17 Feb 2021 05:42:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161354051832424 (code B ref 45518); Wed, 17 Feb 2021 05:42:01 +0000 Received: (at 45518) by debbugs.gnu.org; 17 Feb 2021 05:41:58 +0000 Received: from localhost ([127.0.0.1]:42312 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lCFb3-0008Qu-R3 for submit@debbugs.gnu.org; Wed, 17 Feb 2021 00:41:58 -0500 Received: from mail-io1-f52.google.com ([209.85.166.52]:39440) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lCFb2-0008Qi-Q5 for 45518@debbugs.gnu.org; Wed, 17 Feb 2021 00:41:57 -0500 Received: by mail-io1-f52.google.com with SMTP id s24so12638124iob.6 for <45518@debbugs.gnu.org>; Tue, 16 Feb 2021 21:41:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=b4mjlJ7Hd3eRhI9n0HyKoubyrs84M1SnsdRgda1L2TM=; b=pLB5ykEUHUh/8EHVhKbcLoHbIn+3xIkArG2Uzuume/UHy22UkDMn06jTzs/esW9Ags DIKBPMYqkWeu4mKTwPUyS49EiFHj7oNztN6UY9LrvTY2yeX/k5/QKhXxwHvMQKIFQHzG 7DAoTd/bAg+YIOnR5PQlm/lw9xIZPst+xIRmxhsu1Abh/O/dIkYFM4qm4dV7ACuQyqV8 8ONfvM2SODyAmNYEpIDEO2XchPSuskAmDrWiODVCQmHSE8ejHPQt8/8fJz+YY5sEZ/Z9 YORADWf+Vb844CDugV0DoMrMETGTjDzY34PA5FLaX2XF7r1bjzs5TR3s84xDI+fwsPsC gurg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=b4mjlJ7Hd3eRhI9n0HyKoubyrs84M1SnsdRgda1L2TM=; b=FsTbkoojkuIKGw99QuLg+sbl7YoiomFf5AuE2DUYoRBOSGB4lUnVZbnfKH4US7a4CV IY1HkphYH5BXA3F5dXbvhh4pp3Y95b6/pmL4KtgszCCLFzDNLscxarQU3vi5eb+9PwC0 Wz9UwepFyr8dSYqg8LBjpmzogwIljJD/rS646ZLBXw3JDueBoosKd0MhPG/8Mlff14mW Pwk9iHdB/u8NCDQjcUbDGt2GJnbJ92jd4bz+JblYcodil8pjs1uhJ7p0FEG+j1O5E23Q mTrgSPLa6xtdOcZ2dmfkpzipgnTEXVfy5dvZALNweVT7WlVe9DDwq7HVRi4x05mh8Hf1 Q1yQ== X-Gm-Message-State: AOAM5331M4CJi8jToVPwSrtJjvd0MV8SgtyQ+NmtQyMV9vHxEC8nRuZ5 t8i/HaMKB2+M+eRgsihoI7g/u/43/0f44WeHKmc= X-Google-Smtp-Source: ABdhPJyjT32BHrh9bUFEst0BFGpagIpuDZZTnI03GDVbgZmLG8fMbKzboSmbPIYhJ5J3tXL/4p9n0IfcUMZJZbCf1eQ= X-Received: by 2002:a6b:da0f:: with SMTP id x15mr18931539iob.48.1613540511067; Tue, 16 Feb 2021 21:41:51 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Tue, 16 Feb 2021 21:41:39 -0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000fe328105bb81ac78" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000fe328105bb81ac78 Content-Type: text/plain; charset="UTF-8" Michael - > Hmm, just to be sure: you run Emacs 27.1 with the patched compile.el, > and you run Tramp 2.5.0.1 from GNU ELPA, with the patch in > tramp-integration.el? Actually, I was running Emacs 27.1 with the patched compile.el, and tramp *as it comes in 27.1* with the patch applied to tramp-integration.el. Prompted by your question, I downloaded Tramp 2.5.0.1 from GNU ELPA and copied those .el files over the tramp files in .../lisp/net, applied the patch in tramp-integration.el and recompiled the macos application. I have the patched compile.el included as well, just to be clear. I checked in run time, tramp-compile-advice-add and compilation-start-hook are defined as we'd wish. Unfortunately, I see no change in behaviour. If I click on a syntax error message while compiling test.cpp in the autotools project via tramp, the compile hangs until I ctrl-g out. Not sure why the difference vs. your setup, sorry. Best regards, Duncan. --000000000000fe328105bb81ac78 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Michael -

> Hmm, just to be sure= : you run Emacs 27.1 with the patched compile.el,
> and you run Tramp= 2.5.0.1 from GNU ELPA, with the patch in
> tramp-integration.el?
=

Actually, I was running=C2=A0Emacs 27.1 with the = patched compile.el, and tramp *as it comes in 27.1* with the patch applied = to tramp-integration.el.

Prompted by your question= , I downloaded=C2=A0Tramp 2.5.0.1 from GNU ELPA and copied those .el files = over the tramp files in .../lisp/net, applied the=C2=A0patch in tramp-integ= ration.el and recompiled the macos application. I have the=C2=A0patched com= pile.el included as well, just to be clear.

I chec= ked in run time,=C2=A0tramp-compile-advice-add and compilation-start-hook are defined as we'd wish.
<= div>
Unfortunately, I see no= change in behaviour. If I click on a syntax error message while compiling = test.cpp in the autotools project via tramp, the compile hangs until I ctrl= -g out.

No= t sure why the difference vs. your setup, sorry.

Best regards,
Duncan.



--000000000000fe328105bb81ac78-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 17 Feb 2021 15:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161357639319567 (code B ref 45518); Wed, 17 Feb 2021 15:40:02 +0000 Received: (at 45518) by debbugs.gnu.org; 17 Feb 2021 15:39:53 +0000 Received: from localhost ([127.0.0.1]:44729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lCOvg-00055X-VD for submit@debbugs.gnu.org; Wed, 17 Feb 2021 10:39:53 -0500 Received: from mout.gmx.net ([212.227.15.18]:43427) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lCOvf-00055K-Aj for 45518@debbugs.gnu.org; Wed, 17 Feb 2021 10:39:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1613576384; bh=MShLqxlGcMdEGketR7kqn4XfTp581dY2XrXT6afLV8E=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=ItDzEDADPqAoXNOQVYEOe6w5XNjdjVLYWEAkOAUxdSOt4hlBB/YZoOgmYy/G1Q71Q NWVWXWBm8gDswlXwVMhRj/zLXxJ4170Ux5YcRrg74JsYtLa0M0238ANOlEHDCbn4sP KXkqwvCFrJm03S4Hs6vT+RR9PlBzVHlZEUOLlTyw= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([213.220.145.206]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MxUnz-1m5Is50Vkv-00xpgm; Wed, 17 Feb 2021 16:39:44 +0100 From: Michael Albinus References: Date: Wed, 17 Feb 2021 16:39:43 +0100 In-Reply-To: (Duncan Greatwood's message of "Tue, 16 Feb 2021 21:41:39 -0800") Message-ID: <87mtw2u2io.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:tu2O91gXd3vHznvBSyYSH6yOOC0xNe8cAVIgXN/IZ30WMPE9ERj 10U3DEH83rK0Jr2Y5n7VY72Vxg5zK78d0XMiAfHFTJgwW0o1lAK4PPWlBtELvLcQFoK+DTr EZ8XbIVB6e2zaWm7j13VV0MPDXzMOh9jV29hoKYNvoZ7i/mR+wXdWYQAFwIjoLRZbxSAgGe ghxO7+0x64mVmx0RvwcTw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:oiq+zWnpPyE=:vH0qNJTtSOjoGz0ZPPhk/3 qqBu1uSpjjq1G8jarZRTyKoLLzfDnm6cec5KrYdAd2Nt9s7GnUnMCRhdvKzvcFXxf0vrEyEBp Hm5tp5mVKZl4Qd1KUnfXwfb9LiZJWvCso1Px8NWCSaPwH+bda+IFFW0nz+2kQnk4kMVoPD9f0 zs3FG8dqolRE247I+GLxFrIvU1FikR+vpUeku+R53hEoH/iWYE9wofmTPia4F4O3KhFkraLr1 qQEtFPqB/GNqXypfkNd1MXz6E5a9wWWXI5hRx4NygqNqECzN8NktmzzwAlJtAy+5As6OmZHqS +ZT4bhQIxmG9oXEDPkosWCsUIFdJZtHJSCHXNACbTYlySLymvA0qEGY8NF/FoP6lSi09p4rof +sXJvo5ZytCa23aR+uTnmKM7rqXlIreAKyYH5Si+mkwTv/j61Uf1QPCmPdVnF+XdGMFFXFoCI +3C/sMPmYqiNz8YZuh63iyMyYS6Tfl2ae+stub09PHf0IIWenzTmZKaQeHj72VVqQbmklcfwE jQelW8VhOHS5QSh9XW1IQNERr9QYClR9wTSw74Lk73e1qdYeBx6I+PnTB96ZrpjeZPmCf1bF9 rnjKUTrAwbF1fHmY/f45PkWLNRJ7LtEMrM9Mm+QiWR8RoAkbdjE8aQ35b5AS/IHi9BpLfFVZ0 sqDFyQ5ga41ZiA5CYMdDByxxMRb+P8bn4fVwKz2edwcSXPa2UC9u9f3vZHlF/kRCNH2ZPYBYF eUOYLMU/4MTwOQQpk81/Kf36qYc/GXp6X3D+inI6DSL7hcLcBswrS32bkoQNkkKKPJiJkJzG8 WYzfXt2huHZneqFW0WmA812fwjxumjz1EXmKRbXADXZYLxbBaTqpOI+R5DbFyAdM+58l8d2e2 ipyCW1lPtoEegqjYfahYh5uKy6NneSYkBzOIODEd8= X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain Duncan Greatwood writes: > Michael - Hi Duncan, > Prompted by your question, I downloaded Tramp 2.5.0.1 from GNU ELPA > and copied those .el files over the tramp files in .../lisp/net, > applied the patch in tramp-integration.el and recompiled the macos > application. I have the patched compile.el included as well, just to > be clear. I seriously recommend to use Emacs' package manager for installation, and NOT to overwrite files in Emacs' installation dir. Experience tells, that this is always good for trouble in the long run. > I checked in run time, tramp-compile-advice-add and > compilation-start-hook are defined as we'd wish. > > Unfortunately, I see no change in behaviour. If I click on a syntax > error message while compiling test.cpp in the autotools project via > tramp, the compile hangs until I ctrl-g out. > > Not sure why the difference vs. your setup, sorry. Strange. I've reworked the Tramp patch a little bit. Function names have changed, and more important, it has traces now. Could you please apply this patch instead of the previous patch in tramp-integration.el? Rerun your test with tramp-verbose set to 6, and send the Tramp debug buffer if it still doesn't work as expected. > Best regards, > Duncan. Best regards, Michael. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment Content-Transfer-Encoding: quoted-printable *** /tmp/edifffETTJu 2021-02-17 16:37:56.993381450 +0100 =2D-- /home/albinus/src/tramp/lisp/tramp-integration.el 2021-02-17 14:12:3= 6.736224836 +0100 *************** *** 41,46 **** =2D-- 41,47 ---- (declare-function recentf-cleanup "recentf") (declare-function tramp-dissect-file-name "tramp") (declare-function tramp-file-name-equal-p "tramp") + (declare-function tramp-message "tramp") (declare-function tramp-tramp-file-p "tramp") (defvar eshell-path-env) (defvar ido-read-file-name-non-ido) *************** *** 261,266 **** =2D-- 262,303 ---- (delete (info-lookup->mode-cache 'symbol ',mode) (info-lookup->topic-cache 'symbol)))))))) + ;;; Integration of compile.el: + + ;; Compilation processes use `accept-process-output' such a way that + ;; Tramp's parallel `accept-process-output' blocks. See last part of + ;; Bug#45518. So we forbid them to run in parallel. There must be a + ;; better solution, though. + (defun tramp-compile-disable-goto-error (proc) + "Don't allow remote file operations while compiling." + (with-current-buffer (process-buffer proc) + (when (file-remote-p default-directory) + (advice-add 'ignore :override 'compile-goto-error) + (tramp-message + (tramp-dissect-file-name default-directory) 4 + "Disable `compile-goto-error'")))) + + (defun tramp-compile-enable-goto-error (buffer _message) + "Reenable remote file operations." + (with-current-buffer buffer + (when (file-remote-p default-directory) + (advice-remove 'ignore 'compile-goto-error) + (tramp-message + (tramp-dissect-file-name default-directory) 4 + "Enable `compile-goto-error'")))) + + (with-eval-after-load 'compile + (add-hook 'compilation-start-hook + #'tramp-compile-disable-goto-error) + (add-hook 'compilation-finish-functions + #'tramp-compile-enable-goto-error) + (add-hook 'tramp-integration-unload-hook + (lambda () + (remove-hook 'compilation-start-hook + #'tramp-compile-disable-goto-error) + (remove-hook 'compilation-finish-functions + #'tramp-compile-enable-goto-error)))) + ;;; Default connection-local variables for Tramp: ;; `connection-local-set-profile-variables' and ;; `connection-local-set-profiles' exists since Emacs 26.1. --=-=-=-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 25 Feb 2021 18:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161427805128263 (code B ref 45518); Thu, 25 Feb 2021 18:35:01 +0000 Received: (at 45518) by debbugs.gnu.org; 25 Feb 2021 18:34:11 +0000 Received: from localhost ([127.0.0.1]:39242 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lFLSl-0007Lm-6b for submit@debbugs.gnu.org; Thu, 25 Feb 2021 13:34:11 -0500 Received: from mout.gmx.net ([212.227.17.21]:40001) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lFLSh-0007LU-LZ for 45518@debbugs.gnu.org; Thu, 25 Feb 2021 13:34:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1614278040; bh=S+17Qy/4ckI8f0r90Yi8lHIFNFOJvMG59GmljsG1Yv8=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=TCtKKaCyqwYBQrI7ER0/hpz1rECBdRDOviuJfAjIYY8k2SdfA6SAKyt95w+f1r6yy E3ml7fr8jVA/EyjwK9jDX/gOGQZ84c+l3IJFtBs8pEu2qb+Zb5LYLC7MF5ZneL8jQE PlXSVtavkDmzVGdntQVU3Q3bNlxhfbtzS3gNR46I= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.53.55]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MD9XF-1l6Een2idF-0094g0; Thu, 25 Feb 2021 19:34:00 +0100 From: Michael Albinus References: Date: Thu, 25 Feb 2021 19:33:59 +0100 In-Reply-To: (Duncan Greatwood's message of "Fri, 19 Feb 2021 13:21:22 -0800") Message-ID: <8735xkatew.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:sM3Msj7SKvpUqhKPVNXSxUji+6z3nbpNlMRfYsiXbbbvAcN8vZP EnDgB0Kjg/pRa/pvqgoDONfH5G5e29DNy4ScpE6YEhkVhyKsOZk1uGfZWliAP6Llbna4qy4 zzHPCxTq8jwdSnm7ygr0BAjNa59gLYfxUxbwBYNcfGdJS7X1uPf/r505ZTRkkvW+c02zwvy VtQD/yHlZKKOQepzRFjuA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:L3ovtcbcgOA=:EfajkN3r1IzXQ/yczaIPkq wE1cC/nFALZYjUnYg1KfZciGRF06y2Xd/JDDxI1b9EuN9PFQxvCcZhU/dxTQh26FobbMcKDf1 HnyXccHZVzfH+zFDPrmQyzaA4FAlatgnIhXSLy4oct9I2FlNkd4/sw5CbGpQZ6DueIzlhIQ3D k9zls714O+UyAN1ak/ubWe4C9JNYPfPEW4Hu6+re4Ud0U4P86nQyzIkiDmEeUlPCCCnnk+E/V Q1e4IQLaE+px7rkWXjDiwyz5wHsfxygz44WE92ay22OTkkfudY2i/jivKe2YX+WfkvJRALSW/ qDWdGBPC/fU3rXZaWEYcrhirydFE8MRWFoxXLz6Fi0o2R2YIIk+3//BCccS5AeBQT2R3F5MdJ WdihkgRjL9Fw0Oar1YJlOWOVSdhOVK8E0Hu87Mvso7saeVNBPxThXoSkJWEJizatVAnzLhGzm Xft7Jxw4R1MYmrQA2OVlwTgh4M82e9z9EQKotwGNLtP3CbS9bp5rTnqznxfSPUzN+FjE7UDUj 1rYOk3kMVeWprC9QqP8nruh5LWP3EwEhWHUXC8IfcdngtrKht7NOAavdkg3iI24PbYNRsOBFB iDsOTektjDaLVbh5o+XNh+e0sbIGKcTZJyxqjpV9NS1/B8qGXyhXRdpEozVOIVASmvjNv8ei8 sNtv/YqSpaBXQADOtfizYCE4ypIIVmza3TbmaFfwqoadbLaHD9usWjnyz6VQCxXRopEfHELiW FBgDKvSjiZGw9dBPMRHFpU4uUjYeh62zi6R1XoCzi/SjaJH23OskdJLLhkoRNgQ4QkVArDQd2 qcNKdYQHuiojv2D9aJ62qff3lzVVd+VMuUzcmgrASIjwgdLRqb4+0h/MvsPYkb/MX3VlGIrsp /rvKqHcpuYoYWoKWyz5g== X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Duncan Greatwood writes: Hi Duncan, > Any case, one thing at a time. > > I did manage to collect a traces file with emacs -Q. > I clicked on error message during compile, and compile-in-tramp > session hung. I ctrl-G-ed out, compilation continued for a while until > emacs as a whole crashed, with compilation ongoing until that moment. > > Traces enclosed. Just an interim report. I've worked over the last days on the problem. I gave up the idea to instrument compile-goto-error. The point is that other packages trust on this function as well, like rgrep. Disabling it while rgrep runs is a much too heavy limitation. Tests have shown, that Emacs 25 with the built-in Tramp 2.2.3 does not show the problem. I'm bisecting Tramp in order to find what has triggered the regression. That's not so easy, because not all Emacs and Tramp versions do cooperate. Compatibility issues. However, I believe the problem didn't exist in Tramp 2.3.1; Tramp 2.3.2 shows the regression. Compatibility issues hinder me to bisect better, so I have started to compare both code bases. I hope to find the problem this way, and I hope to fix it then for you and the other Tramp users. > Duncan. Stay tuned, and best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 15 Mar 2021 20:50:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Duncan Greatwood Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.16158413542692 (code B ref 45518); Mon, 15 Mar 2021 20:50:02 +0000 Received: (at 45518) by debbugs.gnu.org; 15 Mar 2021 20:49:14 +0000 Received: from localhost ([127.0.0.1]:37355 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lLu9J-0000hM-Lb for submit@debbugs.gnu.org; Mon, 15 Mar 2021 16:49:13 -0400 Received: from mout.gmx.net ([212.227.17.22]:43029) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lLu9H-0000hA-Bw for 45518@debbugs.gnu.org; Mon, 15 Mar 2021 16:49:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1615841344; bh=BlbzoTZCZEdMM2xfV0UB7Disj/SIILW7bDuGsNklS/A=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=MuAWc3iT8mo19xCssRiDyBXBvWFqeBJM0TRFb6KM++QevDTP4VmMyAbitUEp7Zqt6 G3F79RDZj2ySvGOnHiCiWF09Aj91DytG6drVdyuTWG7NduEBFJka3N0/RtfIbVJEdH s32cgbkv9RYKHw9e+xJxMFDtL2ABY4IWZoTA8seo= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([178.20.90.8]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N8XPt-1lqH572XlR-014W5e; Mon, 15 Mar 2021 21:49:04 +0100 From: Michael Albinus References: <8735xkatew.fsf@gmx.de> Date: Mon, 15 Mar 2021 21:49:01 +0100 In-Reply-To: <8735xkatew.fsf@gmx.de> (Michael Albinus's message of "Thu, 25 Feb 2021 19:33:59 +0100") Message-ID: <87sg4wcfcy.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:UhuJ0W7XNjkxh2M12i3LGzNf6qlGB6wTZ7qXYwonnUDMVbjHGGr RlQUJlL2JQgRCdR/guv76H3AKyiTd55HpM808weTececCTXASWsTHwlCzo+0C8WCL6M3X+8 odndutJRMFCwFbkTEPMtxYen5dTXeOpTd+H097k8bAmZ82s+AWu+45XJUAQlD1/IdujgjQ8 h+Pz4kGIS42CZ8r/G+jLQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:eCxRgJdFi78=:cM3ihCwjUI+T8IWFxnrESD ahqjcDnyJCh9uJOpNLQH+khkoUyE2+OsUbLy+xNSnRyrdE/ZYFFVFxcj340+cM83hkwBQvK2z qsi2gDKgltfsEg6TNAqAtVvHm0XjxLsnrS3SoLhda76pncMJBYXDAlvxgP65dOcB0F/8o2e4A 1Dodfcm8zUOGZdrBlohoy6wlU9ihViJe94FTgsUpV76IDp4Tn3bolYabFlkMl3W1uFwE+y0jK zzxhaNyfpULgzlUrXq+uqmqLLFBb+44qFJA4f5XTYKD57QbMcR9P2/txGU3lXRfxTsgM3B4h2 T+GOzYhfsJg+1pfvwpWU6ShM5sAlc/WoRxdBSCWDlJrriFIwi5wVZGpmb424XFOHR7m8FrKLP LsiFvP7ITwfas4BvjsSG//R30Wm1oc2ksTuiWSE5qn7KzhajsIzIVmT3ioFuuhheRiZ3+iS90 n2eP9IrRaIzM6+2o2UE9Ve9M0rdkBz8CepgU4Jb0bc4ghXWkgrGDJ1HlU1Dw7+xrhgQQtOXfx iZMWMhGwXFpNMsBUDXvQxhdvgmfvGmhaJnNPW/aYVJdDhL2WBKuLigi9UNjl6r5koWrXKdkMQ B4JBfhgVo2SM9DzFb1n5h0mCD3up7DEgbUETp2U4wKXCvBJhm7Fta268bRquCtyPjuYp0UhJ8 vhUht+IJgDcbVv/kEgNLkEeF1IkeX49Psu8vkqdneEV6OhzWHDZMvQSin0S6F2J1jS9oyjcJj KsbiwCKti7gCKDoMcxFCQ84pexUzQ/ECdhxKijeiftZdNQgY8FlCy+8oNF8GYyH4fQ2qZt//y dCWgznbH126EohDw/jWhoGFe9ret6em6JwFPWyxzXQy6DxBgJFsdjJNMJLuMmWMXGvdrav73+ 1DuaB90CecchYdiwwNHg6OmRIG8k9dVcSP9JBCQRM= X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Michael Albinus writes: Hi Duncan, > However, I believe the problem didn't exist in Tramp 2.3.1; Tramp 2.3.2 > shows the regression. Compatibility issues hinder me to bisect better, > so I have started to compare both code bases. I hope to find the problem > this way, and I hope to fix it then for you and the other Tramp users. Bisecting has been harder than expected, due to several reasons. At least I have found the first problematic commit in Emacs, it is 6de77cfa9da18c5e3765c6202b61cef86409e130. I will still need some time to find a final solution, but for the time being you could set tramp-use-ssh-controlmaster-options to nil before you open a remote connection. This shall prevent the problem. I would appreciate if you could confirm this. Now I have nailed the problem, I'm quite optmistic to solve it until release of Tramp 2.5.0.3, scheduled for end of the month. >> Duncan. Best regards, Michael. From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Duncan Greatwood Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 16 Mar 2021 01:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Albinus Cc: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.161585859422138 (code B ref 45518); Tue, 16 Mar 2021 01:37:02 +0000 Received: (at 45518) by debbugs.gnu.org; 16 Mar 2021 01:36:34 +0000 Received: from localhost ([127.0.0.1]:37647 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lLydO-0005kz-I9 for submit@debbugs.gnu.org; Mon, 15 Mar 2021 21:36:34 -0400 Received: from mail-io1-f48.google.com ([209.85.166.48]:36685) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lLydM-0005kk-TK for 45518@debbugs.gnu.org; Mon, 15 Mar 2021 21:36:33 -0400 Received: by mail-io1-f48.google.com with SMTP id n14so35533816iog.3 for <45518@debbugs.gnu.org>; Mon, 15 Mar 2021 18:36:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=1Z9hQCkfxu+kE/cy+MEq9nm8hILMluEHGTMKKjDU8cc=; b=r9mr56gFZfPMorblhh5u7iZCpBnlhduYs3HbBPD6uOX+nmo26a0aUYLC2rq8pR8tx/ UlRPm5GcsMOZSIB3aqg/DVTZPpNswY3ztjqVq4Iv0W8/4SdIhpjWlU3KcgZf8qXdPGx4 Ul7A+wuRzS1gNfB2z41zR6OMdnN1N7AZrxsA1zhnHd+1DEI1rAxhXjTmKaYoehPhPaWp GKlUcnoQNI6klt+kwQlw7vKYDkTLhDFYmnfjsqP6h4vP461jF/xEAp1OIKFbWYZbx3wd W1la9Ni6dN+wScUjwgNh2p2ImUvN98CE+Ogux9mtX4KEgf/hBi1bR/zhv0VZGxyQEGs0 DWTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=1Z9hQCkfxu+kE/cy+MEq9nm8hILMluEHGTMKKjDU8cc=; b=KTLQDX6FcDthpHwDT1LZHiHQVG0Mq3tDMs6sXHAPJRjWhr+VkpGJMOMZ0CbPAsAe/P TPuos9U5k63kkoZ3g2+X0v+1aSPvE3SuUNWAe0sbDKRGTtsmvPfNTfpLzj6lMCf8vcve Dgy0dW3zNSzo2dBTCKgPC3NzX+FqcZpEGqVuAngv/QUa8uS9MUFigvm0zEDHye8spvoi ldXK5moYlxgKMp/eLJrb9hT1gm+SsRFCHVl4c3Lqs+fxoS7DHUcq2cLCOEPyONeOVJd6 /ZZuSBg7RXy+PPwi4xT5IeAB5b9D8/bQC7Q7suSeECAoMpj3322oCrAVF38ghDEqmAzZ kzWg== X-Gm-Message-State: AOAM533F10lkQ0jqBkIVcBN9g7yBC4BoElyJtGt5T8Ew0PGfLkeSVR74 0FL0BETlL4imxzia6y6zXUSwxoG/jXUpsulHWaw= X-Google-Smtp-Source: ABdhPJzFawm/P+0jvWWcywxIroTGFLRMXYSF+2qzLrgDLNnWycvGaTCgnlvGEvcIXSoUzJRIwyizlpMK1bA+e4tMmNM= X-Received: by 2002:a5e:8610:: with SMTP id z16mr1615878ioj.57.1615858587210; Mon, 15 Mar 2021 18:36:27 -0700 (PDT) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 15 Mar 2021 18:36:16 -0700 Message-ID: Content-Type: multipart/alternative; boundary="000000000000191ab305bd9d6578" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000191ab305bd9d6578 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Michael - > I will still need some time to find a final solution, but for the time > being you could set tramp-use-ssh-controlmaster-options to nil before > you open a remote connection. This shall prevent the problem. I would > appreciate if you could confirm this. [DG] Happy to. I checked that I still see the issue (clicking on an error message suspends compilation until ctrl-G) without this variable being reset. I then restarted emacs and changed the variable, as confirmed by this help-variable output: tramp-use-ssh-controlmaster-options is a variable defined in =E2=80=98tramp= -sh.el=E2=80=99. Its value is nil Original value was t As you predicted, the issue does *not* show-up once tramp-use-ssh-controlmaster-options has been reset to nil like this. This was using the version of tramp that ships with emacs 27.1. The compile.el patch we discussed earlier is applied. JFYI, the version of ssh on my mac is: $ ssh -V OpenSSH_8.1p1, LibreSSL 2.7.3 Best regards, Duncan. --000000000000191ab305bd9d6578 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Michael -

> I will still need so= me time to find a final solution, but for the time
> being you could = set tramp-use-ssh-controlmaster-options to nil before
> you open a re= mote connection. This shall prevent the problem. I would
> appreciate= if you could confirm this.
[DG] Happy to.

I checked that I still see the issue (clicking on an error message s= uspends compilation until ctrl-G) without this variable being reset.
<= div>
I then restarted emacs and changed the variable, as conf= irmed by this help-variable output:
tramp-use-ssh-controlmaster-options= is a variable defined in =E2=80=98tramp-sh.el=E2=80=99.
Its value is ni= l
Original value was t

A= s you predicted, the issue does *not* show-up once=C2=A0tramp-use-ssh-contr= olmaster-options has been reset to nil like this.

= This was using the version of tramp that ships with emacs 27.1. The compile= .el patch we discussed earlier is applied. JFYI, the version of ssh on my m= ac is:
$ ssh -V
OpenSSH_8.1p1, LibreSSL 2.7.3

= Best regards,
Duncan.


--000000000000191ab305bd9d6578-- From unknown Fri Aug 15 20:04:48 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Duncan Greatwood Subject: bug#45518: closed (Re: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1) Message-ID: References: <87k0q7c5oc.fsf@gmx.de> X-Gnu-PR-Message: they-closed 45518 X-Gnu-PR-Package: emacs Reply-To: 45518@debbugs.gnu.org Date: Tue, 16 Mar 2021 18:31:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1615919462-27356-1" This is a multi-part message in MIME format... ------------=_1615919462-27356-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 45518@debbugs.gnu.org. --=20 45518: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D45518 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1615919462-27356-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 45518-done) by debbugs.gnu.org; 16 Mar 2021 18:30:37 +0000 Received: from localhost ([127.0.0.1]:41035 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lMESj-0006nc-BL for submit@debbugs.gnu.org; Tue, 16 Mar 2021 14:30:37 -0400 Received: from mout.gmx.net ([212.227.15.15]:36379) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lMESh-0006gK-7c for 45518-done@debbugs.gnu.org; Tue, 16 Mar 2021 14:30:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1615919428; bh=YY1N/cAxWNKC5Iql4szwCbw62VJumdQXxcPk3V0zqj4=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=CpjATqKK/S05dMRvC6qc4kyrFLcKi7Yg7rnFR/S8uhvmQ4/Dr6A7llVQg7pXOXLHk te3VUytKGKajjhMsPU9Jj7ioaENjYlTdFoOC49n7VThuflEKoWFDNEdbOFiNXg4hbC 7dK9m55zIxaNaOmh1n5Z1sybZBoSl1J0/VCMC4Uk= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from gandalf.gmx.de ([212.86.63.66]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M7sHo-1lIMqc1ahW-0050Mr; Tue, 16 Mar 2021 19:30:28 +0100 From: Michael Albinus To: Duncan Greatwood Subject: Re: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: Date: Tue, 16 Mar 2021 19:30:27 +0100 In-Reply-To: (Duncan Greatwood's message of "Mon, 15 Mar 2021 18:36:16 -0700") Message-ID: <87k0q7c5oc.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:jPUkGwB28ENT3E2GJKYYq2mOdlubvH+7NCSAG7sRkWJiKlfju9k YYpfiGUpx0ZpOTxmDUNYMLGz6nt6m9R/INS0YzEqVRVVCXGVNKEmkM6tJqS6mfkMccQVC3Z xuApSXMAkBOBEYVNrDWp3Vtj6rCVj3iHfYyY5gP8Yv70PJPd4UpICWc6xI9fYhO9Ik/jbpU rNrmXil77uMjx3numpwXg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:1EA12OLf4O4=:SSt9x29oXkCild5b0LGkAT S1OxdZC6NOnVFjU4t+Uk7tBPSB6n7sqmFF9jjXv5+MF/+iy3BSCfG9f+pkPEwcOLH7SD5dyPN Tx5u0mqL+AiSqdMZXnm+azwh3auQpmbGPYdsqatjTCt1sJyCfYbuhdz3zFulrDcFBifnv/Ldk dmbBTCryK86wAlEn/pQnYTjL9FkOnijBJmtpEdABI4B2PkfutiIsNL0rtJjWEuwVVcG9cGE8r cUGW211elo+MOvWCletSvv8WLu1PQU6wojN46r0jBKTHclzp7B5w7GeSMTJsN1N70B9t+vkLg 9qM6lC3xFDkzrFhGr/6e9jEskkN7LgXRQYyQzyEfJx1/LmtYsGazjFGGPzb8I/riVeHLjdy2j YcJl6jHyT2RnIRnka1eO13epYC5kwS6rUwit5naK+x6lA3khzfphFh11k/0eF2KyiHtzqlKRM VLcpi8JirCsCyJlKVivRJSFQqWBBDlyHS7iDs7FHksJlZqZZU9y1+kmUAL/sbvda2phPoB2tk CPf7ou4UTFkBF/4QS8jALa3lDZH6Z9BVxuAeflP6EisUpge2zZPEmIMZ+KpB/FvCv7xShII2b i4RSFOEjYf5Xpnw8OQOjwo+JC2V2gcLJ83ILwy7qjziKydbyqwgBj9+0Xih/DuT4p6tcptO23 h4baWLQaodYPYnYtuNwCnTwmxqSS4Fvz8cJQfCRgKhu1NKUsW7KIFwAT9eJEuMGLWVhdY+wfX lHgsVbOMfNAXWTurXmjLZSoJeSO8qvDvql8zLlCiLQJdppbE5+SLMobDXWkzA1w4kaZag8lHO 6DhEKDqbeLjMIITx0KQ8KcIsAn9iQCb7ApfZijG+u9HxE7OR9AiMv5vCZyOauOM0JN//B3dFV SQzx0Fesc182RmgabnBw== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45518-done Cc: 45518-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Version: 28.1 Duncan Greatwood writes: > Michael - Hi Duncan, > As you predicted, the issue does *not* show-up once > tramp-use-ssh-controlmaster-options has been reset to nil like this. Thanks for confirmation! I've pushed a respective patch to Tramp, as promised it will appear with Tramp 2.5.0.3. If you are curious, you can check it here: . Until Tramp 2.5.0.3 is released, you can still use the workaround (setting tramp-use-ssh-controlmaster-options to nil), or you can apply the patch, as you like. > This was using the version of tramp that ships with emacs 27.1. The > compile.el patch we discussed earlier is applied. Thanks for the reminder: this patch isn't needed anymore. I'm closing the bug. > Best regards, > Duncan. Best regards, Michael. ------------=_1615919462-27356-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 29 Dec 2020 02:44:26 +0000 Received: from localhost ([127.0.0.1]:37295 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ku4zp-00049k-Pt for submit@debbugs.gnu.org; Mon, 28 Dec 2020 21:44:26 -0500 Received: from lists.gnu.org ([209.51.188.17]:47496) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ku3Xe-00042q-Nd for submit@debbugs.gnu.org; Mon, 28 Dec 2020 20:11:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40362) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ku3Xe-0007Na-HG for bug-gnu-emacs@gnu.org; Mon, 28 Dec 2020 20:11:14 -0500 Received: from mail-io1-xd35.google.com ([2607:f8b0:4864:20::d35]:38394) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ku3Xb-00037V-VS for bug-gnu-emacs@gnu.org; Mon, 28 Dec 2020 20:11:14 -0500 Received: by mail-io1-xd35.google.com with SMTP id y5so10897959iow.5 for ; Mon, 28 Dec 2020 17:11:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=MMr5AbcMJvZxz6fAPvEUBzxktEpFlmYiwE1ASk7cTqI=; b=teSwZlU00lGBD8A7zX97JP5Ht0iBAYszzsC2VSlME8R/XjEiBM5hjcDr8eqXsAc024 1XllR7BrTsZvc/mbhE3MJzU2NzWIM4YBTr+/sMetqe+NaaZORcQdLpF2GChSfDhdjk4M nU8lkwxiEpgy7rKmguVHp+QmQ9xp/t5TlJ5j2I6zqGnC+VhQU5mreCx+vqqtz3WUUSEx vaGBPR3cwcjDHfV5DJzbUcglaM1X/o9L5rJaZU3JPkohPBjRMIlQr6MlJnUscDwEjloK Ah1+d61bsjtcV1Tlp2IlHZsC1pcpALsnxreO2Zi63tzu9jZROlYOwUutWaPS8cVlBVG2 ZPPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=MMr5AbcMJvZxz6fAPvEUBzxktEpFlmYiwE1ASk7cTqI=; b=G3NulUNcHnfY08T3AQW1b5HPL1VsG0+7KNoEqcMZ4YXpkd/l1iyq0eLAzyABN4xM5j dNF/tX8MHkmDC44Rki7s/c8nhHtqLfzqF/t5pSIyds4AocgTpc48LkRXrvwz4tt/zxAS jcq12DgXBlU50KOflPUlC/SwKuW5aQRjx3oGAxQU4JxycQc5SGVMtRmvDr2anm48cQkX ztSQAPcp12gGDht4Jkr8sjWviiGbtHvKXsQid6CGv2St16pMb/F9Wpzgz3XeJqvk4yOT o5guDuFtzZ48It3zl7LaYppxITNLdsQz8dpzSR+ldBjAGRfXtHmTSy9zIucgAeGC375V 4zfg== X-Gm-Message-State: AOAM532Eh3n0SI62joV73F4VYhiSYstMnGneoxMKJIBNiTexsHzoJ9+Y KDKgcjrNWyN5/R+GmYmIDcdzlIa32Fp0C4qAYY/DJlT601U= X-Google-Smtp-Source: ABdhPJw3eL2pYdXlEmYq9uPU0AznJkpBIhF459hXD8gl7cGgR4iF4DPT59h72DhmD8uf3xjEnr7EbSawmYoic21OLFQ= X-Received: by 2002:a02:caac:: with SMTP id e12mr40317195jap.45.1609204269800; Mon, 28 Dec 2020 17:11:09 -0800 (PST) MIME-Version: 1.0 From: Duncan Greatwood Date: Mon, 28 Dec 2020 17:10:58 -0800 Message-ID: Subject: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 To: bug-gnu-emacs@gnu.org Content-Type: multipart/alternative; boundary="000000000000df629005b7901058" Received-SPF: pass client-ip=2607:f8b0:4864:20::d35; envelope-from=dgbulk@gmail.com; helo=mail-io1-xd35.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Mon, 28 Dec 2020 21:44:24 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --000000000000df629005b7901058 Content-Type: text/plain; charset="UTF-8" Using tramp, I had a remote cpp file open in a window. I pressed "C-c c", which invokes a function in my .emacs called compile-hereish, which (in this case) invokes the compile command with the remote directory containing the remote cpp. Compilation begins as expected. The cpp file contains a number of syntax errors. There is what I understand to be a longstanding Tramp bug such that, if a lot of outputs (syntax errors) are sent at high speed to the compile window, Tramp hangs. In emacs 26.2, Ctrl-G (usually ctrl-g three times) would interrupt the hung Tramp window, and indeed cause the errors to be displayed in the window as best as Tramp is able. In emacs 27.1, Ctrl-G does nothing in this "tramp-hung-while-compiling" situation. I also tried ctrl-c ctrl-c, but that also does nothing. It appears that the only way to kill the hung Tramp compile is to force-quit emacs as a whole at the OS level. Machine running emacs: MacBook Pro (2015), macos Big Sur v11.1. I am using emacs 27.1 installed via brew-cask on macos. On the Macbook: ssh -V OpenSSH_8.1p1, LibreSSL 2.7.3 Remote host for compile: Ubuntu Linux 20.04.1 LTS (GNU/Linux 5.4.0-54-generic x86_64) On remote host: ssh -V OpenSSH_8.2p1 Ubuntu-4ubuntu0.1, OpenSSL 1.1.1f 31 Mar 2020 Also on remote host: gcc --version gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. If I revert back to emacs 26.2 on the Macbook, ctrl-G once again works as expected in the event of a Tramp hang. I am attaching to the remote host using Tramp-ssh mode, but I also tried Tramp-scp and saw the same behaviour. My .emacs includes: (setq tramp-default-method "ssh") (setq tramp-chunksize 500) The following cpp file (on Ubuntu machine) is sufficient to generate a large number of syntax errors and hang Tramp, blocking ctrl-G (crashing emacs) in emacs 27.1 for me. // test.cpp DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( DummyClass( int validstuff(); int validstuff() { return(0); } // end test.cpp Thanks as always. D. Following was generated via: M-x report-emacs-bug In GNU Emacs 27.1 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 Version 10.14.6 (Build 18G95)) of 2020-08-11 built on builder10-14.porkrind.org Windowing system distributor 'Apple', version 10.3.2022 System Description: macOS 11.1 Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Package cl is deprecated Mark set Configured using: 'configure --with-ns '--enable-locallisppath=/Library/Application Support/Emacs/${version}/site-lisp:/Library/Application Support/Emacs/site-lisp' --with-modules' Configured features: NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS JSON PDUMPER Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: global-undo-tree-mode: t undo-tree-mode: t global-auto-complete-mode: t show-paren-mode: t delete-selection-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-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 buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: /Users/dgreatwood/.emacs.d/lisp/linum hides /Applications/Emacs.app/Contents/Resources/lisp/linum Features: (shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs format-spec rfc822 mml easymenu mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs text-property-search seq byte-opt bytecomp byte-compile cconv mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils linum easy-mmode time-date subr-x server persistent-todo special-scratch tango-theme advice undo-tree diff auto-complete-config auto-complete popup string-inflection paren desktop frameset unbound cl-macs cl gv delsel edmacro kmacro cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win 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 timer select scroll-bar mouse jit-lock font-lock syntax facemenu 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 loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads kqueue cocoa ns multi-tty make-network-process emacs) Memory information: ((conses 16 70462 8546) (symbols 48 8556 1) (strings 32 22334 1877) (string-bytes 1 713421) (vectors 16 12259) (vector-slots 8 156248 17226) (floats 8 39 36) (intervals 56 248 0) (buffers 1000 14)) --000000000000df629005b7901058 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Using tramp, I had a remote cpp file open in a window.
=
I pressed "C-c c", which invokes a function in my .emacs call= ed
compile-hereish, which (in this case) invokes the compile command wit= h
the remote directory containing the remote cpp.

Compilation beg= ins as expected.=C2=A0

The cpp file contains a number of= syntax errors. There is what I understand to be a longstanding Tramp bug s= uch that, if a lot of outputs (syntax errors) are sent at high speed to the= compile window, Tramp=C2=A0hangs.

In emacs 26= .2, Ctrl-G (usually ctrl-g three times) would interrupt the hung Tramp wind= ow, and indeed cause the errors to be displayed in the window as best as Tr= amp is able.

In emacs 27.1, Ctrl-G does nothing in= this "tramp-hung-while-compiling" situation. I also tried ctrl-c= ctrl-c, but that also does nothing. It appears that the only way to kill t= he hung Tramp compile is to force-quit emacs as a whole at the OS level.

Machine running emacs: MacBook Pro (2015), macos Big= Sur v11.1. I am using emacs 27.1 installed via brew-cask on macos.
On the Macbook: ssh -V
=C2=A0 =C2=A0 OpenSSH_8.1p1, LibreSSL 2.7.3<= div>
Remote host for compile: Ubuntu Linux=C2=A020.04.1 LTS (= GNU/Linux 5.4.0-54-generic x86_64)
On remote host: ssh -V=C2=A0 OpenSSH_8.2p1 Ubuntu-4ubuntu0.1, OpenSSL 1.1.1f =C2=A031 Mar 2020=
Also on remote=C2=A0host: gcc --version
gcc (Ubuntu 9.3= .0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 Free Software Foundation, I= nc.
This is free software; see the source for copying conditions.=C2=A0 = There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PART= ICULAR PURPOSE.

If I revert back to emacs 26.2 on the Ma= cbook, ctrl-G once again works as expected in the event of a Tramp hang.

I am attaching to the remote host using Tramp-ssh mo= de, but I also tried Tramp-scp and saw the same behaviour. My .emacs includ= es:
(setq tramp-default-method "ssh")=C2=A0 =C2=A0
(= setq tramp-chunksize 500)

The following cpp fi= le (on Ubuntu machine) is sufficient to generate a large number of syntax e= rrors and hang Tramp, blocking ctrl-G (crashing emacs) in emacs 27.1 for me= .
// test.cpp
=C2=A0 DummyClass(
=C2=A0 = DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 Du= mmyClass(
=C2=A0 DummyClass(
=C2= =A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
=C2=A0 DummyClass(
int = validstuff();
int=C2=A0validstuff()
{
=C2= =A0 =C2=A0 return(0);
}
// end test.cpp

<= /div>
Thanks as always.
D.

Following was generated via: M-x report-emacs-bug

In GNU Emacs 27.1 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 = Version 10.14.6 (Build 18G95))
=C2=A0of 2020-08-11 built on builder10-14.porkrind.org
Windowing= system distributor 'Apple', version 10.3.2022
System Descriptio= n: =C2=A0macOS 11.1

Recent messages:
For information about GNU Em= acs and the GNU system, type C-h C-a.
Package cl is deprecated
Mark s= et

Configured using:
=C2=A0'configure --with-ns '--enable= -locallisppath=3D/Library/Application
=C2=A0Support/Emacs/${version}/sit= e-lisp:/Library/Application
=C2=A0Support/Emacs/site-lisp' --with-mo= dules'

Configured features:
NOTIFY KQUEUE ACL GNUTLS LIBXML2 = ZLIB TOOLKIT_SCROLL_BARS NS MODULES
THREADS JSON PDUMPER

Importan= t settings:
=C2=A0 value of $LANG: en_US.UTF-8
=C2=A0 locale-coding-s= ystem: utf-8-unix

Major mode: Fundamental

Minor modes in effe= ct:
=C2=A0 global-undo-tree-mode: t
=C2=A0 undo-tree-mode: t
=C2= =A0 global-auto-complete-mode: t
=C2=A0 show-paren-mode: t
=C2=A0 del= ete-selection-mode: t
=C2=A0 tooltip-mode: t
=C2=A0 global-eldoc-mode= : t
=C2=A0 electric-indent-mode: t
=C2=A0 mouse-wheel-mode: t
=C2= =A0 menu-bar-mode: t
=C2=A0 file-name-shadow-mode: t
=C2=A0 global-fo= nt-lock-mode: t
=C2=A0 font-lock-mode: t
=C2=A0 blink-cursor-mode: t<= br>=C2=A0 auto-composition-mode: t
=C2=A0 auto-encryption-mode: t
=C2= =A0 auto-compression-mode: t
=C2=A0 buffer-read-only: t
=C2=A0 column= -number-mode: t
=C2=A0 line-number-mode: t
=C2=A0 transient-mark-mode= : t

Load-path shadows:
/Users/dgreatwood/.emacs.d/lisp/linum hide= s /Applications/Emacs.app/Contents/Resources/lisp/linum

Features:(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
f= ormat-spec rfc822 mml easymenu mml-sec password-cache epa derived epg
ep= g-config gnus-util rmail rmail-loaddefs text-property-search seq
byte-op= t bytecomp byte-compile cconv mm-decode mm-bodies mm-encode
mail-parse r= fc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-dru= ms mm-util mail-prsvr mail-utils linum easy-mmode
time-date subr-x serve= r persistent-todo special-scratch tango-theme
advice undo-tree diff auto= -complete-config auto-complete popup
string-inflection paren desktop fra= meset unbound cl-macs cl gv delsel
edmacro kmacro cl-loaddefs cl-lib too= ltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel = term/ns-win ns-win
ucs-normalize mule-util term/common-win tool-bar dnd = fontset image
regexp-opt fringe tabulated-list replace newcomment text-m= ode elisp-mode
lisp-mode prog-mode register page tab-bar menu-bar rfn-es= hadow isearch
timer select scroll-bar mouse jit-lock font-lock syntax fa= cemenu
font-core term/tty-colors frame minibuffer cl-generic cham georgi= an
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
j= apanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
eth= iopic indian cyrillic chinese composite charscript charprop
case-table e= pa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice lo= addefs button faces cus-face macroexp files
text-properties overlay sha1= md5 base64 format env code-pages mule
custom widget hashtable-print-rea= dable backquote threads kqueue cocoa ns
multi-tty make-network-process e= macs)

Memory information:
((conses 16 70462 8546)
=C2=A0(symbo= ls 48 8556 1)
=C2=A0(strings 32 22334 1877)
=C2=A0(string-bytes 1 713= 421)
=C2=A0(vectors 16 12259)
=C2=A0(vector-slots 8 156248 17226)
= =C2=A0(floats 8 39 36)
=C2=A0(intervals 56 248 0)
=C2=A0(buffers 1000= 14))




<= br>



--000000000000df629005b7901058-- ------------=_1615919462-27356-1-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 18 14:11:08 2024 Received: (at control) by debbugs.gnu.org; 18 Nov 2024 19:11:08 +0000 Received: from localhost ([127.0.0.1]:35188 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tD79Q-0001sY-3y for submit@debbugs.gnu.org; Mon, 18 Nov 2024 14:11:08 -0500 Received: from mail-pl1-f172.google.com ([209.85.214.172]:36165) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tD79O-0001s0-BZ for control@debbugs.gnu.org; Mon, 18 Nov 2024 14:11:06 -0500 Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-211eb2be4a8so18215ad.1 for ; Mon, 18 Nov 2024 11:11:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1731957000; x=1732561800; darn=debbugs.gnu.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=gbvDECT96CAsuKj+h3YSbEcgkHshpq9Kibn70BYfQlo=; b=O7HCHllBqmDsAiS2yfTYYQ77p9yWfzEZHyDmjurzrqznYvLOEF0Esjm/lgpVyE/yyK Ks7cvPuMrRfv18ag1AEg7lo2BXd/yq7WlGW36ao4+DheqbLv7ZglW5hrMixZTOWBJWvY NzQOU1Kv6nJBHzcf8BypGTKld9JUDmYok+3oXblucriS7mjFbyasN8LanzQ9V15Vcpyh QWbXorMtPLRUgsFbOP2fyiMw2ZdOX1tXQ9ytCx5+QHU66sXN51sryJvGO/sURW9Bu3qv Tm3JV/gUH4GmJmKA0grEU9KyXFja1nYjD9zR3UjNgElXRVzac8qoeJyoksf+88HNmuGq AsOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731957000; x=1732561800; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=gbvDECT96CAsuKj+h3YSbEcgkHshpq9Kibn70BYfQlo=; b=ha+GsBwbapjAa8VZcwSudqzXlIWPF60Jap+78ENiz4Nh+ghk+Zxl37KByYiYJV3iwD //uMZMh7gg+P/Gh/nfdifdUhRlKUcqOWtpd9swKEwQNkDRJnM9bTgxc+w2VLi5VxoJ8v KsqALSVNhwNaQ0wY+nUTmL/PqzaYWFDpBGXIk8zZILIXwiUPxogNzHwtY9rtpoVhAV8x GFtJlvxch5ebldBEQp31EpH83ZKfcSjr5SuBWemaRqxyRWA4eXP5nyHzZtg3Aue4PwFX Mi5S9L/EMzSu1bDzKsAxa8AozcJcvuNgLpoetU+Nj5vakgdrxGex0ElD+WI4cFqv6rdK 6ezQ== X-Gm-Message-State: AOJu0Yy4gC34tR92GbfOsUeLTGUGEznp0NBD98JOLW6/OKenpbwYhRgo Cm2ZCYOmCiXeFBGB3ozwI59MoJDfohhlogX983fZivYJfIyEiJIr2Y+gaULOUidtkkzJTcLtqk8 Zgk1hA8x1kwO6HvmoCYq62d//1ydnuBSLyIfjaiwJNRW72u/5dM6tGdw= X-Gm-Gg: ASbGncuKqwaVs03NAPLGRoExbuwlEiTtFcNw9PBuN2eSO6d7Fk0z4BxNPLVrYjJ3J24 bKnabKkNNOfZ+3p4XI7llz1d0JS66OiU= X-Google-Smtp-Source: AGHT+IGZP1Ad7jqCtrQMhWok+pfUajMdbPVHLevjtgX7vs0c/mTWAZxQ+NWtVzRn11kP2HWS7CuhW/LjxHumjR+ltIk= X-Received: by 2002:a17:903:328f:b0:20c:8a97:1fd with SMTP id d9443c01a7336-2124ea8d200mr1705ad.19.1731957000264; Mon, 18 Nov 2024 11:10:00 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Alex Hutcheson Date: Mon, 18 Nov 2024 14:09:49 -0500 Message-ID: Subject: Re: To: control@debbugs.gnu.org Content-Type: multipart/alternative; boundary="000000000000c4c71f062734a91a" X-Spam-Score: -8.7 (--------) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -9.7 (---------) --000000000000c4c71f062734a91a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable unarchive 45518 On Mon, Nov 18, 2024 at 2:07=E2=80=AFPM Alex Hutcheson wrote: > reopen 45518 > --000000000000c4c71f062734a91a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
unarchive 45518

On Mon, Nov 18, 2024 at 2:= 07=E2=80=AFPM Alex Hutcheson <alexhutcheson@google.com> wrote:
reopen 45518
--000000000000c4c71f062734a91a-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 References: In-Reply-To: Resent-From: Alex Hutcheson Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 18 Nov 2024 19:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.17319572917632 (code B ref 45518); Mon, 18 Nov 2024 19:15:02 +0000 Received: (at 45518) by debbugs.gnu.org; 18 Nov 2024 19:14:51 +0000 Received: from localhost ([127.0.0.1]:35194 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tD7D0-0001z1-Mz for submit@debbugs.gnu.org; Mon, 18 Nov 2024 14:14:50 -0500 Received: from mail-pl1-f181.google.com ([209.85.214.181]:35916) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tD7Cz-0001yq-8r for 45518@debbugs.gnu.org; Mon, 18 Nov 2024 14:14:49 -0500 Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-211f1a46f7fso21145ad.0 for <45518@debbugs.gnu.org>; Mon, 18 Nov 2024 11:14:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1731957228; x=1732562028; darn=debbugs.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=pkKfna/wxNzCkj0lphfrdGVt+Wqp1oj/jiFOazFK17I=; b=Wm/agZ9Y2+qyxTdJusThwXreElCwcui4WPjvz4VtD2qWEspSSKVDaRPf0L1X2KkUL0 pAaZEA9urJVILsAEvewOBoJohgREksKavdqaOvyxH+daAwrJR4BMZVqMkeu8PXAU/VZg 2m1FI26s2zPgOxqRcbmTOH62PLB6pAtIXpNtX1fFL0HRgjjNsQgkfLYYXPzZy6+HqOqD qTGXerGuI7otl+XIB4/87I82QosNYGQjyfXvEVNQ0RdJW92EstWCi3v1VfNK3l2E5F3w vUIOS7YOVrhQu6FC7IsPm3E+gJ+OBZK5UIEWVVamgL+Cq6qplxx41jQTKSU0doyEmZLN ufuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731957228; x=1732562028; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=pkKfna/wxNzCkj0lphfrdGVt+Wqp1oj/jiFOazFK17I=; b=rQ68Y4YQBGcWj5wCxaLpV/amya2tIb/PDrxMNapiaOb4jT2xW+3IDsCGD/jFuIEU0K k2nRn51asvA/BeCSU3hk3qBeeJcteCQTEkSepbUNQyYofSTYG9DjkdD3UptnsQ8r6q1W 02uEbislpYNRM2AVKizEG341qEbniDDego6PNhrhr9YAryPIuOFojZyf1tvwDhRIR8ax x/lXJArS50MlMFmGqEHYOiePhlNLW9/b/QhIXNAFtMLJeuu3SyEHSa73nRzHcxGXA08O SwSGwKE7Fuga3hiQAk560cs224i7732D7iQyybNMnnANDDhpoytvPv5gb3HrpGKAEKSb D0AA== X-Gm-Message-State: AOJu0YyqbGU+W5PFzUzgCsxB9uRmMaZOgk+6NZjug+t2TQtKpx1Dzsvj 7YeBaNiGehMdPbEfd5/voWj+tEFp+3cmpkVps0NSQPID8xLgqRjidp9qe1qAABpnjPOber3dDhR PsuYoRF8SNpELOD7QIMtOSGpI9VQmm9qRTvhNn4HwIJ4tY2LaqhdYVoo= X-Gm-Gg: ASbGncvUv68Os4FjLYFdhJC0y2ko5AllzM7cp14qFt7THvKdrtsth+vX3cNq1z3NUS1 UsMLYnc22m42Ph+xdKSNb9wiG93IeHIg= X-Google-Smtp-Source: AGHT+IELDTyk0lVpN8QCiXBwSg0/z43OLrMlkqCoMnQCSjH0ZswqZ5rTUblUoR0/4SbTb2b6tTtX9ivJUbtwNECEp6Y= X-Received: by 2002:a17:902:f547:b0:20b:6c3c:d495 with SMTP id d9443c01a7336-2124eaa58d0mr11805ad.25.1731957227838; Mon, 18 Nov 2024 11:13:47 -0800 (PST) MIME-Version: 1.0 From: Alex Hutcheson Date: Mon, 18 Nov 2024 14:13:36 -0500 Message-ID: Content-Type: multipart/alternative; boundary="000000000000556786062734b74f" X-Spam-Score: -8.0 (--------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -9.0 (---------) --000000000000556786062734b74f Content-Type: text/plain; charset="UTF-8" It seems like the root cause of this issue (a deadlock due to 2 Emacs functions waiting on different output from the same socket) was fixed as part of bug#61350. Can the tramp-compile-disable-ssh-controlmaster-options workaround now be removed? Some of the users in my org have complained about additional SSH connections being created by compilation functions. --000000000000556786062734b74f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
It seems like the root cause of this issue (a deadlock due= to 2 Emacs functions waiting on different output from the same socket) was= fixed as part of bug#61350.=C2=A0

Can the tramp-compile= -disable-ssh-controlmaster-options workaround now be removed?
Some of the users in my org have complained about additional SS= H connections being created by compilation functions.
--000000000000556786062734b74f-- From unknown Fri Aug 15 20:04:48 2025 X-Loop: help-debbugs@gnu.org Subject: bug#45518: Ctrl-G Fails to Interrupt Hung Tramp Remote-Compile in Emacs 27.1 Resent-From: Michael Albinus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Nov 2024 09:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45518 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 45518@debbugs.gnu.org Cc: alexhutcheson@google.com X-Debbugs-Original-To: Alex Hutcheson via "Bug reports for GNU Emacs, the Swiss army knife of text editors" X-Debbugs-Original-Cc: Alex Hutcheson , 45518@debbugs.gnu.org Received: via spool by 45518-submit@debbugs.gnu.org id=B45518.17320937392689 (code B ref 45518); Wed, 20 Nov 2024 09:09:01 +0000 Received: (at 45518) by debbugs.gnu.org; 20 Nov 2024 09:08:59 +0000 Received: from localhost ([127.0.0.1]:45199 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tDghm-0000hI-Jw for submit@debbugs.gnu.org; Wed, 20 Nov 2024 04:08:58 -0500 Received: from mout.gmx.net ([212.227.17.20]:42795) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tDghk-0000h4-Gr for 45518@debbugs.gnu.org; Wed, 20 Nov 2024 04:08:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1732093729; x=1732698529; i=michael.albinus@gmx.de; bh=4PXUQLsTOIJfh0b+IGH2/h9MpgUL4L9XUSyMxY0w3w0=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date: Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=rUQpUbkhGTYBWh+CrrdB8ib4uSehXbmQaRVgZ7qkyP8eJsrlpHFSgs7xlSS7jZ2Z 6L7fD98lfVwqiBeAFXrmPtKF9ZGOgYOmJ6KPAcxghbru0ve5dNv0fsH4986wweaNY 5W+9IjKuyltChYh1iAcarFF4cEzn8Ab3Cxmi4Xr/WwU5cfwJ3K4tEPSdUKL21juGc zS/xTD+zGvoRTR4Tl61tqKcI957Ph7o2PFIjMpbwOSCAT+gTOpLjLEawUFb0YWkpK XLhPCHAYRcE5kSEYtRYbk7eD3+DPSfbpnlkA2nof6ns4L0d0oyWkegkfWno/0pqS1 XBxy4li8W1ef8DVihw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from gandalf.gmx.de ([185.89.38.155]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M5fMY-1t7f6A320g-008YfF; Wed, 20 Nov 2024 10:08:48 +0100 From: Michael Albinus In-Reply-To: (Alex Hutcheson via's message of "Mon, 18 Nov 2024 14:13:36 -0500") References: Date: Wed, 20 Nov 2024 10:08:45 +0100 Message-ID: <87o72a9srm.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:KVorgWanmhdjHdmik27+6xo99Q4weO/cHzRjnxudhmVVEgpr/7k haHpQVH4iIrC8oxRgzP9Lux8yBVuOJQvFaTwwdyc9wWY/qMhFBWO2Na1KJj8OlObGWhLM9g 4I6oUQx0mOF4dea+9ZBEzrxzMSou6eomn6fQWP1Mf+TxUnYDXA7EW5VmPdOM5LdAEql5ZUx xNTkjWCBTjrhXV5y0w4Mw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:7XGJFMteJWo=;g8NbhW9RDSd7zjEmaISTG/hau8o z9B+kT6XlIaOOgzbDcwu2jov5Sz4SZymtrax8OiyJE1PAI3umNtrx1bx5HpDohBPYYm30TyWd D73qtMSOhTrwPUm3R7kLkBVIaAuG4CIF/b9VlOBwB3Iw7DM4ESP12yGz61Hmyp8N6DouhLkHj 6fGUFMlH1gbyLINsMFRWy0rkA1nplzlwV8ciu0fJlGvpl3tGtp/19djm+hFC3tu8zEetgmKx8 FbWUJtgOOPiryeypXWAIzz30YCTKl+hpvI2IeVn+Igub8GZxjCCuukRJ9DWlMPzUrtskHYGes UO8XbNGnaFLOvHoFsHORwD3ozH8aC9UQV242ziDToruS6jxY2ms0cnbf6xkZXEDJXKlUyRV4v Wg5e0u0Y/Sm+2P3/A5eE/CgwWWGTfMfX9fxIqjT4Njn1KngK6iaxnMMCxgzP1TRQkJdKDPENS yadnMRDsTb8yWW7xLZ3xlCfrCFLEtcA3ufqLHWEh7A6t2KGrf4yT77a1hAAOig2Ky7ML3rXgI FTZj3GtFzovwNXAmQ/BXUWj/DJdHsFG5ibRzj7tEiJzQia/bLBc0uPRTHjAq4lduZLUiAzzPj RSIiFh/OASdJhS+TUskLA2jgIecjl6tbDJCe92If+8asCPadQtBjo1X+/qTj6f0kLThZzFPpp gK9+1KhlQ33q4k66BcTcWERoUr9eXZkaXjE0uSf0qdEfaZdz1ml3Ha1MoNejN0JvOTwjT8Bx/ Mjx8Aih034lAPoarChy8oj6rzx95NeqqPNmPv/eDY4A2twqPE22gEb/bOIOdGV0458rn0ABXR 7zTGTgTI0A1GR6X1qcSHj5AIBVul/AYcD7jo2bKHfH8Wjq8J03GrCREM+VPZXc/fmrTWU5b46 BReFG8R6ShzrzXqUp/ExzjYwzhYq8dzim+MQ5QzfnWkyFwzUJUbA/SU1v Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Alex Hutcheson via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: Hi Alex, > It seems like the root cause of this issue (a deadlock due to 2 Emacs > functions waiting on different output from the same socket) was fixed > as part of bug#61350. > > Can the tramp-compile-disable-ssh-controlmaster-options workaround now > be removed? Well, we have indeed some code in tramp-accept-process-output, which should improve the situation. However, before I remove the workaround, it should be tested whether the problem described in bug#45518 is fixed indeed. Going through the discussion, it requires a complex test infrastructure I'm not able to reproduce ATM (for example, my Ubuntu machine has died. RIP.) If somebody could remove the workaround from tramp-integration.el, and test the recipe given there, I would be more confident that we can remove the workaround finally. > Some of the users in my org have complained about additional SSH > connections being created by compilation functions. As mitigation, they can call after loading compile.el and tramp.el =2D-8<---------------cut here---------------start------------->8--- (remove-hook 'compilation-mode-hook #'tramp-compile-disable-ssh-controlmaster-options) =2D-8<---------------cut here---------------end--------------->8--- Best regards, Michael.