From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 88864 invoked by alias); 6 Feb 2017 18:53:44 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 87711 invoked by uid 89); 6 Feb 2017 18:53:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 spammy=H*r:2a01, H*r:111, H*r:e400, H*f:sk:1486406 X-HELO: sessmg23.ericsson.net Received: from sessmg23.ericsson.net (HELO sessmg23.ericsson.net) (193.180.251.45) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 06 Feb 2017 18:53:31 +0000 Received: from ESESSHC007.ericsson.se (Unknown_Domain [153.88.183.39]) by (Symantec Mail Security) with SMTP id 71.75.22993.726C8985; Mon, 6 Feb 2017 19:53:29 +0100 (CET) Received: from EUR03-AM5-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.39) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 6 Feb 2017 19:53:27 +0100 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=simon.marchi@ericsson.com; Received: from [142.133.50.115] (192.75.88.130) by AM3PR07MB385.eurprd07.prod.outlook.com (2a01:111:e400:8820::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Mon, 6 Feb 2017 18:53:25 +0000 Subject: Re: [PATCH] Eliminate interp::quiet_p To: Pedro Alves , References: <1486406442-4662-1-git-send-email-palves@redhat.com> From: Simon Marchi Message-ID: Date: Mon, 06 Feb 2017 18:53:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <1486406442-4662-1-git-send-email-palves@redhat.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: CY1PR14CA0030.namprd14.prod.outlook.com (2a01:111:e400:5282::40) To AM3PR07MB385.eurprd07.prod.outlook.com (2a01:111:e400:8820::11) X-MS-Office365-Filtering-Correlation-Id: 8d5079d1-10a3-43b0-3619-08d44ec16ef0 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:AM3PR07MB385; X-Microsoft-Exchange-Diagnostics: 1;AM3PR07MB385;3:7awfyRpsxe03OEWB05VBzY7ZY61iQJs5ERJ6YkfArfqIvRSw2r6kmXqIUmfkKqJnK1BHNijnXI7qcWFozVsB0SUxLBFigvrgHcfWLLCHJ/F2Fw5/n3amsG/DfDYtZLikRi1thCeplvl+EolzG/VGfl+sItNqe19lpedXiL9Oucd67CchEcFVNbxFtl1VD7MJjofh4GjB1OnG5oXm9ZRu368ZtIrwcA1GPFY+JjQUt0PMadkHUCiWlH2eBty0TnrX3DMuSQTw3AupwA1Hau7XCw==;25:LVioVAD+Bh6FToCgflryNIx19dk1WukVO9fCvaI/AwMc+M3QGZ5eb6UziZipdC5Bh5w6VqZezsi8Vy6GByBbeuFLSb+H/V6IQasGDtfEH915VkXNIENMgQ1VEyFgCNPXHUmTskU2VwDCRaA3tYiJ3f1cSeLcuVfN2Xt43+ovuMKwWVQ6SgufZhFNNvD2G8lNhvMkwQXKWluuFV/HrSwVdJ8U9RAwTVOXW3Aya4vACbB4up0d7ptQScP3hoF4KYQe3N4IJRLC5ffmQrEyq/b2BUT4DgciLtQlqr6li2O7bVDBiFczoZ3uMVywI3uNd6469YmcCqztRNBAOs0l/LAk9OHpAAnur+IAocc7SUs+GN4BkxAMW3ukOQvXlxPNEvJnDk0HtaT+9EdFf4xy5ABT4DvztzVXjDySQWPm3Gny3uh8uxnwQaGAWTWnlDjR/oZwS+DeuGzC6eFEQpSCaS/+og== X-Microsoft-Exchange-Diagnostics: 1;AM3PR07MB385;31:mNV8hOJVP9U2pXSZmuPfD8hVSf5bHBY1ggN8RBvZjvUVUOZeHlpmIIFbaX3fO73fzdRwX8CNMEeEtZV7XVeDtMvRKKkes6uzlz9qpDg8mp8yGIMa8XAK2O86fZUjyk5Ik7Z47delBMj+teTKXExtYwe1laP53dcXWCCk+zNqa8iYxX7ptS/h8IiALfwbic/53s5LLpwRMlO7xBz5ckUOekegsIyafqzm6ZLSL/rG8aiJycDdRVzCMJln8ZK5zXBpVLKUyKQ8G7P4b82ye36R1glhw9nubtR/9kInkiH958MguFHmlf7a4swV6FmB3Z9d;20:dofOLtAb+wUvlckGQ3CNhFYiis+JaZZIoLSNx/2Cpr8AA/C7M3kf/6xlc3CpRrktsWpoILBhCBQqutnf47lLvsVG5NP0oekzOtIUARD6eqKlBFgIiotbgeArpUSeGxAjgxRKZ5FZDnAenayErNZnexzPLb0rIGkrrGibUoDfVsbM4qZWgekt9aq95xoEwsqLLd5Mdce9MT/BGnQIVZ6IGttj7ZTWkpMFEX/+Y8Em20QhOqZ1vmsKoOv0iC72uNUx+xKrbVyRUU3Pczq15jlupzxUS+iRj58wI1DPYsgy64gT/APG6mksIYhsCK7VfuzLydHQwkKxkHKY8HS8J6maGDClyA3vnkoLXqLpMzSOCY3kNq54dRGJrw2vIqQqzwwuerpeBNf800yCXLI0VfG94L8rfaq6yzilA6iOEa1Ack+OhfCSAXAKu2ReAt5ADTeoZpDwwEAfJoIDuA28pkgZNJ4ZDxY5M3XZ3axqq6MbT/J9D/UTmmk1AB7IcQjcAjvL X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(20170203043)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123558025)(20161123555025)(20161123564025)(20161123560025)(20161123562025)(6072148);SRVR:AM3PR07MB385;BCL:0;PCL:0;RULEID:;SRVR:AM3PR07MB385; X-Microsoft-Exchange-Diagnostics: 1;AM3PR07MB385;4:ssHy0S105/aqWtpc60B1h3eZv9SKIOqGT/nk9QW9luXOt5Um0vyLYZ1CougFN0W/T7OyRL9JkRgv/zDlXJZcBMg38S94dcUzCWGc7gyUwH5fJ0OH5VUxwwiwmdMiQitRH8tI9pLgWfmBb+aZNCP4jaVGF/pqDgFi1C+P+8jhGF8R8ChTTRqHjVMh3KgxZnH9LvacGvQVOylrqpg0XLOL8RBSHIf2BDLwBFk8uJAwzvyr6hwhCJhaaFBUeg45r5Q8shsOX/pJcBs2ZTCFV/b3VYCDP1E4J23LYnsHrhuimaYVoxVMVbRRAwMc40Fjc3JzNx2TQFiX4IV1K/PmbUau5/9dqrlAx7ZunE3ZXMQsZ4SkQaF8LFqdvXaoe2WtDMR+6zQXxB/+9u22IyXZgFUyFZJGfZuaHBixjO1fD4o6ejw+3ur+RlwK12JKu810ynh8fd6qQwCA7LVMd9g0iGudo9PwmswYcngRunXlWPL/bzTNRYV9WASzn0GJ4cjDDtgJG+3ErWPn9tobHDDGWd+3QUMW4eO+Vzq9k7pUv73FYNEDU2gWmqEYmIrw+lqsd8YR7BdHBRkcpR2GiUKVP+4CdzxPa8wL1VCcwmYfah+8eUs9z+Yw75Di+knuLX5MUrnFThq3p0KFQK8HNonTpZxhKOoxUzsPDKLRaCJ4uXF58lqfAnZjTdxMd/LdpLjLOhNd X-Forefront-PRVS: 0210479ED8 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(7916002)(39450400003)(54534003)(377454003)(199003)(189002)(24454002)(377424004)(107886002)(68736007)(8676002)(101416001)(36756003)(42186005)(81166006)(6486002)(4001350100001)(97736004)(38730400001)(33646002)(305945005)(7736002)(81156014)(31686004)(2906002)(230700001)(83506001)(6246003)(53546003)(6666003)(2950100002)(65826007)(92566002)(23746002)(65806001)(189998001)(66066001)(65956001)(47776003)(6116002)(64126003)(3846002)(106356001)(5001770100001)(105586002)(53936002)(76176999)(54356999)(50986999)(229853002)(31696002)(86362001)(5660300001)(50466002);DIR:OUT;SFP:1101;SCL:1;SRVR:AM3PR07MB385;H:[142.133.50.115];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;AM3PR07MB385;23:5DIK1xWLQ25x6SbonufSkszT1oyYMY6okoI5+v?= =?Windows-1252?Q?X04m7ZAdmnwVW/qByhbTn6HOMV6qBtCOhRZnfU+INUehYQjoZQ7zWfGv?= =?Windows-1252?Q?9IqtUoYXbEga/nXHVpLWjU8SiTeFSXVdotY7ObZCm1zolKCH77Z3kZBg?= =?Windows-1252?Q?iAyW73Z/4TJd+eDF+8eBikuhsi6/cU4fxQBTGhrkzb2OnzNWikmC5/FC?= =?Windows-1252?Q?LRhT+gWGLzfmXLQyZiZKk1OdAYLMYKfO17yjcOOUiR+4Y8YKZeQvNDRg?= =?Windows-1252?Q?vTsff2927C6ftWEBBXRVoTwkXwarJR5gDgAZL90Ec4bjoMe4kGG8hiKc?= =?Windows-1252?Q?XUZacbzJ2+4uLf+qcYh1e0uZTKGoukrZW9FX7ch2c9XL46Crm6dorirp?= =?Windows-1252?Q?DHyxJTMsKE01A2IXswgzx1AfdiSV6pswBD8P/TKNWtjIH2aI0WAJFFpp?= =?Windows-1252?Q?bLVkmc8/KOsfpsvla06T0A2qKyeept/BMwrYF5guyRiPKYDStBrcwAHp?= =?Windows-1252?Q?Qy7H2W8/qRtCfnuIQ7srp+B7KMg13UivQ2NgujdlQAM1WgUxAOSskVPJ?= =?Windows-1252?Q?LUel1zLb8wjq6Yf5udBmuHI2pw7AXVBSSeAqvoU8/Do190TmCaPAWfYb?= =?Windows-1252?Q?I0Ol9AcbvTA3fPtpW8vO+jmF34xWnREnIEj6EDk+df7Qr9vgsSN7rmxn?= =?Windows-1252?Q?N140xSIWCoHycEuF/TGGMiGvWUMXjf85dFQwHTLVp0mtNou6uCxCGdMQ?= =?Windows-1252?Q?janII8D8dI4Yk3MfFsSPzuDciO5xkPEM0pvzjoH1utz99Spo48V7aw1G?= =?Windows-1252?Q?Rn6aufJLvpT3jNnvaDfnQUpWo+RlNFeO+POb4aG28cTRq3TJ1zQf2EBE?= =?Windows-1252?Q?s/7vAkoaNpEOihLL4SS8z8ayZyAC4d0GnuGzE57oQ9uZ4MVNtk+SZFOO?= =?Windows-1252?Q?LnLIbxBWj1Vh1HvWgF7RSoI9da+7p+C+AqWDzmfaZid2La9Ism5Jrc4m?= =?Windows-1252?Q?z8AKaZcbW0Vcvoqib/OJNW1C/b5ZNK90IL+qOnLpfSo8p5EUjqjDYWeX?= =?Windows-1252?Q?I/LlN9kDPiAHCInpso1E0LXUX6wU9JvXwUPZHcX79XkJGtY1Ppg8e9R2?= =?Windows-1252?Q?ZoghDbN9emk2n3uhIGDWXN09TurJ4AZx4x8kxG4eu4EMARuCBS61Jbrd?= =?Windows-1252?Q?sSUxr5JY+was2mrjRXCjjBgXA0R34ASy77mXkcik+rvkxRw1ULXYWTKC?= =?Windows-1252?Q?5mrQIZEq5vCTvM2C6vMDzuz4pZQThbcHpfIxs8EZU83a6/Hhzy4bWVn6?= =?Windows-1252?Q?y/b8Kc2qNgampc5q30r1YSiPQ93urcQJJPKZQJ+AWXeK5gEbHSi5jcEl?= =?Windows-1252?Q?jJ62iXj/HuykpMVC1URIGfWj6mCwpjxTCnZpyCCnN7n6y5cl7jf97p8b?= =?Windows-1252?Q?VA3PMQwdValracXvKGtAjLN+MuujKIYO36zVfUehfD2yeZCEqRaP09DQ?= =?Windows-1252?Q?3aCGQ=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM3PR07MB385;6:YF7Ie6BMXOUwcLimhCHlys1Qy6WJNz5kdfbs2ceOXNGIGkUY6GyDSiPeV8PTtTG9l5lDF0Y+gGE2q1+/ICaamW4iCCCCY3+MWvvVdLSjBlevvkj/i5EU+A5FImfcd5pomJYOF/mEpGECs8AM1/e2gAKVJGi2fJhTvPzL8HMF8tcL1jUSj5oRhIXsXGnYPrdTbdhz3Bmx4mPxvl0kgksr8eS+v9U3iNuDWpd1qD9+S2urgbP5SFp62/2E/w1Idd6mV4LFWNfBPB4HQmUeBjO7rA2aGY0qmy4xxNRIuOk0GdKPYj/8vIhVe+pfyvjQjVxp7mks9Tzm5rSUgOat0+3ABeq9Ux/+OJWW4C/TZR+zjeXONdjWjONcieAMY9xsX+1hXIz+1z91H00X1cAQl6ZVLQ==;5:CQZUVGdFnDXg55Z+jkm7wSrI4Jco+ZR7gkehEg4hwf6Z9GM5vOdGUBMl8BOp4/NUY1VyzI4ycMkCEE5KXA+qC3fY0fTSM7W0eKcUZYasgPj6JzuyPTwSu7gvSby2XPyWqgVd6SREPyJ3YuqwqoHKWQ==;24:wZ8oD+HyYfiCE7O/Ho3YUkXX4okX+b+3+aVsWvMyPeTi+JcO8LCmmtlaIlBz1XTllu13rTJHhog72RkRFKz+fbK0JSsn70GekgBcanOvktk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AM3PR07MB385;7:dQicytqeunlphGFt1P5B/J0JPELqTHTUPm6SIG/uHMveyH5HBuQVYegwEJDrkzY/rJHW9qLHYQwi59pFt8TzcxxYFPqBiPReStF5VMzYEueHXLTBaSqlYFsxFpyTrxYk2RNKY3dQto2X4W6Lz0AWc4Yod5Lj2nlWWT8LdHgJjkgF1fi4paKHpyKYuwK/TmpHIgRT2pBTl6DJvgC5+WGSPyKFfLI/fyStqdEzeAY9VDQbQhlxO3oFq15CfxtcxSZcaHcJ1F2siQs0moqx0ym9MOgVlWyGuTWfFuY7Exs397kY1l/IzCTkuucrlrZn7B5XVCwuPTGU7WTOe7MnINQEqltEJMDR7TtasNH6qGnSbIsKi6wg1mjsI0qzCQaw+2Ga8H19tFgAexG7xTLVaFVtqabPfUU9dO0TQKjRqqTg3JPjiXZ+aIeJ711O99q9XSbcXBItOkURNLnn6w0f9BCEg14kSOq1lQ7faMvBQ9g96FtSozrpbyxhNiok1ZLX+KbK/fA2vYcB1Ga3bUv/Sj7vGw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Feb 2017 18:53:25.5629 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR07MB385 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes X-SW-Source: 2017-02/txt/msg00137.txt.bz2 On 17-02-06 01:40 PM, Pedro Alves wrote: > [Here's something I noticed back when working on new-ui.] > > This commit removes interp::quiet_p / interp_quiet_p / > interp_set_quiet, because AFAICS, it doesn't really do anything. > > interp_quiet is only ever checked inside interp_set nowadays: > > if (!first_time && !interp_quiet_p (interp)) > { > xsnprintf (buffer, sizeof (buffer), > "Switching to interpreter \"%.24s\".\n", interp->name); > current_uiout->text (buffer); > } > > I did a bit of archaelogy, and found that back in 4a8f6654 (2003), it > was also called in another place, to decide whether to print the CLI > prompt. > > AFAICS, that condition is always false today, making that if/then > block always dead code. If we remove that code, then there are no > interp_quiet_p uses left in the tree, so we can remove it all. > > There are two paths that lead to interp_set calls: > > #1 - When installing the top level interpreter. In this case, > FIRST_TIME is true. > > #2 - In interpreter_exec_cmd. In this case, the interpreter is always > set quiet before interp_set is called. > > Grepping a gdb.log of an x86_64 GNU/Linux run for "Switching to > interpreter" (before this patch) doesn't find any hits. > > I suspect the intention of this message was to support something like > a "set interpreter ..." command that would change the interpreter > permanently. But there's no such command. > > Tested on x86_64 Fedora 23. > > gdb/ChangeLog: > 2017-02-03 Pedro Alves > > * interps.c (interp::interp): Remove reference to quiet_p. > (interp_set): Make static. Remove dead "Switching to" output > code. > (interp_quiet_p, interp_set_quiet): Delete. > (interpreter_exec_cmd): Don't set the interpreter quiet. > * interps.h (interp_quiet_p): Make static. > (class interp) : Remove field > --- > gdb/interps.c | 44 +------------------------------------------- > gdb/interps.h | 4 ---- > 2 files changed, 1 insertion(+), 47 deletions(-) > > diff --git a/gdb/interps.c b/gdb/interps.c > index d31d53b..322b9f5 100644 > --- a/gdb/interps.c > +++ b/gdb/interps.c > @@ -82,7 +82,6 @@ static struct interp *interp_lookup_existing (struct ui *ui, > interp::interp (const char *name) > { > this->name = xstrdup (name); > - this->quiet_p = false; > this->inited = false; > } > > @@ -156,12 +155,11 @@ interp_add (struct ui *ui, struct interp *interp) > events such as target stops and new thread creation, even if they > are caused by CLI commands. */ > > -void > +static void > interp_set (struct interp *interp, bool top_level) > { > struct ui_interp_info *ui_interp = get_current_interp_info (); > struct interp *old_interp = ui_interp->current_interpreter; > - int first_time = 0; > char buffer[64]; > > /* If we already have an interpreter, then trying to > @@ -174,10 +172,6 @@ interp_set (struct interp *interp, bool top_level) > current_uiout->flush (); > old_interp->suspend (); > } > - else > - { > - first_time = 1; > - } > > ui_interp->current_interpreter = interp; > if (top_level) > @@ -207,13 +201,6 @@ interp_set (struct interp *interp, bool top_level) > clear_interpreter_hooks (); > > interp->resume (); > - > - if (!first_time && !interp_quiet_p (interp)) > - { > - xsnprintf (buffer, sizeof (buffer), > - "Switching to interpreter \"%.24s\".\n", interp->name); > - current_uiout->text (buffer); > - } > } > > /* Look up the interpreter for NAME. If no such interpreter exists, > @@ -375,26 +362,6 @@ interp_supports_command_editing (struct interp *interp) > return interp->supports_command_editing (); > } > > -int > -interp_quiet_p (struct interp *interp) > -{ > - struct ui_interp_info *ui_interp = get_current_interp_info (); > - > - if (interp != NULL) > - return interp->quiet_p; > - else > - return ui_interp->current_interpreter->quiet_p; > -} > - > -static int > -interp_set_quiet (struct interp *interp, int quiet) > -{ > - int old_val = interp->quiet_p; > - > - interp->quiet_p = quiet; > - return old_val; > -} > - > /* interp_exec - This executes COMMAND_STR in the current > interpreter. */ > > @@ -445,7 +412,6 @@ interpreter_exec_cmd (char *args, int from_tty) > char **trule = NULL; > unsigned int nrules; > unsigned int i; > - int old_quiet, use_quiet; > struct cleanup *cleanup; > > if (args == NULL) > @@ -467,10 +433,6 @@ interpreter_exec_cmd (char *args, int from_tty) > if (interp_to_use == NULL) > error (_("Could not find interpreter \"%s\"."), prules[0]); > > - /* Temporarily set interpreters quiet. */ > - old_quiet = interp_set_quiet (old_interp, 1); > - use_quiet = interp_set_quiet (interp_to_use, 1); > - > interp_set (interp_to_use, false); > > for (i = 1; i < nrules; i++) > @@ -480,15 +442,11 @@ interpreter_exec_cmd (char *args, int from_tty) > if (e.reason < 0) > { > interp_set (old_interp, 0); > - interp_set_quiet (interp_to_use, use_quiet); > - interp_set_quiet (old_interp, old_quiet); > error (_("error in command: \"%s\"."), prules[i]); > } > } > > interp_set (old_interp, 0); > - interp_set_quiet (interp_to_use, use_quiet); > - interp_set_quiet (old_interp, old_quiet); > > do_cleanups (cleanup); > } > diff --git a/gdb/interps.h b/gdb/interps.h > index e564980..1b9580c 100644 > --- a/gdb/interps.h > +++ b/gdb/interps.h > @@ -39,7 +39,6 @@ extern int interp_resume (struct interp *interp); > extern int interp_suspend (struct interp *interp); > extern struct gdb_exception interp_exec (struct interp *interp, > const char *command); > -extern int interp_quiet_p (struct interp *interp); > > class interp > { > @@ -86,12 +85,9 @@ public: > > /* Has the init method been run? */ > bool inited; > - > - bool quiet_p; > }; > > extern void interp_add (struct ui *ui, struct interp *interp); > -extern void interp_set (struct interp *interp, bool top_level); > > /* Look up the interpreter for NAME, creating one if none exists yet. > If NAME is not a interpreter type previously registered with > LGTM.