From patchwork Fri Sep 8 18:22:57 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Marchi X-Patchwork-Id: 75562 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1604D3853D19 for ; Fri, 8 Sep 2023 19:03:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1604D3853D19 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1694199789; bh=3Xy7T3hD0amvNvzLEjiGIK9UVQafVnmgjuGQWEd+MwM=; h=To:Cc:Subject:Date:In-Reply-To:References:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=bqSfBhy5eCxZCuE7WDO+LL2QRg2u2sg2/IVZ75KcxpzR/Lw4+nlgPTj3jDqdIhANL /EziHMcMd1QX1NC/iVZ/MtMQ4r8msHfLJ9lccbFG/GRXDVNvamanRzOtvKC1+tHHY1 mc/rQso0iPF+kg+oy6Obyi0JoklYi/Kt73goNzLs= X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from simark.ca (simark.ca [158.69.221.121]) by sourceware.org (Postfix) with ESMTPS id 1D6A43858C2D for ; Fri, 8 Sep 2023 19:02:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1D6A43858C2D Received: from smarchi-efficios.internal.efficios.com (192-222-143-198.qc.cable.ebox.net [192.222.143.198]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPSA id A3E641E0D0; Fri, 8 Sep 2023 15:02:29 -0400 (EDT) To: gdb-patches@sourceware.org Cc: Simon Marchi Subject: [PATCH 03/21] gdb: make interp_add a method of struct ui Date: Fri, 8 Sep 2023 14:22:57 -0400 Message-ID: <20230908190227.96319-4-simon.marchi@efficios.com> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20230908190227.96319-1-simon.marchi@efficios.com> References: <20230908190227.96319-1-simon.marchi@efficios.com> MIME-Version: 1.0 X-Spam-Status: No, score=-3497.1 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_NONE, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_SOFTFAIL, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Simon Marchi via Gdb-patches From: Simon Marchi Reply-To: Simon Marchi Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org Sender: "Gdb-patches" No behavior changes expected. Change-Id: Ice8958068fd4025e23bff87bcdee45a5f64a41c4 --- gdb/interps.c | 12 +----------- gdb/ui.c | 10 ++++++++++ gdb/ui.h | 4 ++++ 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/gdb/interps.c b/gdb/interps.c index 3ddcfe9566fe..b05a6c4eb875 100644 --- a/gdb/interps.c +++ b/gdb/interps.c @@ -83,16 +83,6 @@ interp_factory_register (const char *name, interp_factory_func func) interpreter_factories.emplace_back (name, func); } -/* Add interpreter INTERP to the gdb interpreter list. The - interpreter must not have previously been added. */ -static void -interp_add (struct ui *ui, struct interp *interp) -{ - gdb_assert (ui->lookup_existing_interp (interp->name ()) == nullptr); - - ui->interp_list.push_back (*interp); -} - /* This sets the current interpreter to be INTERP. If INTERP has not been initialized, then this will also run the init method. @@ -170,7 +160,7 @@ interp_lookup (struct ui *ui, const char *name) if (strcmp (factory.name, name) == 0) { interp = factory.func (factory.name); - interp_add (ui, interp); + ui->add_interp (interp); return interp; } diff --git a/gdb/ui.c b/gdb/ui.c index ae87dcda2453..624187ac73c3 100644 --- a/gdb/ui.c +++ b/gdb/ui.c @@ -159,6 +159,16 @@ ui::lookup_existing_interp (const char *name) const return nullptr; } +/* See ui.h. */ + +void +ui::add_interp (interp *interp) +{ + gdb_assert (this->lookup_existing_interp (interp->name ()) == nullptr); + + this->interp_list.push_back (*interp); +} + /* See top.h. */ void diff --git a/gdb/ui.h b/gdb/ui.h index 23c6b2e1a3d9..48cad96b3fb8 100644 --- a/gdb/ui.h +++ b/gdb/ui.h @@ -162,6 +162,10 @@ struct ui : public intrusive_list_node /* Look up the interpreter for NAME. If no such interpreter exists, return nullptr, otherwise return a pointer to the interpreter. */ interp *lookup_existing_interp (const char *name) const; + + /* Add interpreter INTERP to this UI's interpreter list. The + interpreter must not have previously been added. */ + void add_interp (interp *interp); }; /* The main UI. This is the UI that is bound to stdin/stdout/stderr.