From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28174 invoked by alias); 2 Aug 2019 13:36:43 -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 28158 invoked by uid 89); 2 Aug 2019 13:36:42 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-6.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=ham version=3.3.1 spammy= X-HELO: gateway20.websitewelcome.com Received: from gateway20.websitewelcome.com (HELO gateway20.websitewelcome.com) (192.185.46.107) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 02 Aug 2019 13:36:41 +0000 Received: from cm10.websitewelcome.com (cm10.websitewelcome.com [100.42.49.4]) by gateway20.websitewelcome.com (Postfix) with ESMTP id CEBC9400CC8D5 for ; Fri, 2 Aug 2019 07:32:59 -0500 (CDT) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with SMTP id tXjbhqJor2PzOtXjbhvCgu; Fri, 02 Aug 2019 08:36:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=7LPoxGlE63V6tpW1VbzKIS5C0p6eXqNGrpl/o1wAbzE=; b=TPEMVh7j77o9an5hAb2tO8EWuY /7u4xoRvP+ZFL6eNTIxFMt1qFDxuzObHJM+0PRyE9El+jAXvFxHJrZU3yonoU8OwoBbOTLc0diKDw WkKQUe91pUoiiK4qZ8RHqs0Y7; Received: from 97-122-178-82.hlrn.qwest.net ([97.122.178.82]:34986 helo=murgatroyd) by box5379.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from ) id 1htXjb-001Zsn-Fr; Fri, 02 Aug 2019 08:36:39 -0500 From: Tom Tromey To: "Christian Biesinger via gdb-patches" Cc: Christian Biesinger Subject: Re: [PATCH] Add block['var'] accessor References: <20190801223420.234581-1-cbiesinger@google.com> Date: Fri, 02 Aug 2019 13:36:00 -0000 In-Reply-To: <20190801223420.234581-1-cbiesinger@google.com> (Christian Biesinger via gdb-patches's message of "Thu, 1 Aug 2019 17:34:20 -0500") Message-ID: <87y30bit95.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2019-08/txt/msg00043.txt.bz2 >>>>> "Christian" == Christian Biesinger via gdb-patches writes: Christian> 2019-08-01 Christian Biesinger Christian> * NEWS: Mention dictionary access on blocks. Christian> * python/py-block.c (blpy_getitem): New function. Christian> (block_object_as_mapping): New struct. Christian> (block_object_type): Use new struct for tp_as_mapping field. Thank you for the patch. Christian> + struct symbol *sym = block_lookup_symbol ( Christian> + block, name.get(), symbol_name_match_type::FULL, VAR_DOMAIN); What about looking up things in other domains? I wonder if it's possible to, say, have a local type that can be found by iteration over the block but not by dictionary access. If so, that seems confusing. Christian> + if (!sym) { Christian> + PyErr_SetObject (PyExc_KeyError, key); Christian> + return nullptr; Christian> + } The formatting here is incorrect. The call to block_lookup_symbol looks weird (gdb doesn't generally use trailing parens like that), and the brace after the "if" is misplaced. Tom