From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23332 invoked by alias); 24 Jun 2012 17:03:04 -0000 Received: (qmail 23250 invoked by uid 22791); 24 Jun 2012 17:03:01 -0000 X-SWARE-Spam-Status: No, hits=-5.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-qa0-f41.google.com (HELO mail-qa0-f41.google.com) (209.85.216.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 24 Jun 2012 17:02:47 +0000 Received: by qabg27 with SMTP id g27so1210360qab.0 for ; Sun, 24 Jun 2012 10:02:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:x-system-of-record:x-gm-message-state; bh=TjFIgyA2LHvE7pCEqOWESjUUy2arFO0l9qH64dvwpow=; b=iekiHTUk0vt1GE34x3lDVSqRniep8qPJIdZyM9GFc3LGhCL7uL9Xa57CtviNjDqPUf Uxg60KtY0Jqty9/CcDQtgpC63t9t+TW8XFy03LHahXvyWKUeOg2Uekr4RqKBJegJYXma DRAMOobuWPg/SOtTtGa6/2pRkQqCJ5KaHOijIsEDubjP6z4PZLxNfHDDaS/oFphDCxh+ exAMPpUFVtravHo9prrqNZaWhZqitE7PNU2A56JylHiTmwJSHSL5433veQS+BwDNl7eF cG+TVl2P1ysYS4UgmeuEiEwfrpQ/3lfT7VCc5/97KrzP4xpduNdoF/4R4WHbqx5TE16g fOww== Received: by 10.224.183.73 with SMTP id cf9mr7515979qab.55.1340557366883; Sun, 24 Jun 2012 10:02:46 -0700 (PDT) MIME-Version: 1.0 Received: by 10.224.183.73 with SMTP id cf9mr7515970qab.55.1340557366777; Sun, 24 Jun 2012 10:02:46 -0700 (PDT) Received: by 10.224.126.67 with HTTP; Sun, 24 Jun 2012 10:02:46 -0700 (PDT) In-Reply-To: <87k3yzgtjo.fsf@fleche.redhat.com> References: <87k3yzgtjo.fsf@fleche.redhat.com> Date: Sun, 24 Jun 2012 17:03:00 -0000 Message-ID: Subject: Re: [RFC - Python Scripting] Add 'end' attribute to gdb.Symtab_and_line From: Siva Chandra To: gdb-patches@sourceware.org, Doug Evans Content-Type: multipart/mixed; boundary=20cf302d4ce0a5d61c04c33ad50a X-System-Of-Record: true X-Gm-Message-State: ALoCoQlIacK0vk5KVFKOcByrurjOSSjMLbCCERh/5ulDMEeHn1SoY0S9qogPp/3I8WrcGIJEQlvXOIbkW9iivbg8mMZyT8mZc+f3F9NUJHYY+JzP+mYnNOmvaMch48viMSwvLcRWcCxtUt8B2EtuCgd36cljoE4IGzWRP0MjFq9UOzwRWuszqXxoiLyE0pfNRO2VvxTWIaqp X-IsSubscribed: yes 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 X-SW-Source: 2012-06/txt/msg00754.txt.bz2 --20cf302d4ce0a5d61c04c33ad50a Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1115 On Fri, Jun 22, 2012 at 10:42 PM, Tom Tromey wrote: > It seems that sal->end can be == 0. > For example I think gdb.decode_line can create sals like this. > In this case I think "- 1" will yield weird results. > Perhaps a None return would be better? Done. The patch is attached. 2012-06-24 Siva Chandra Reddy New attribute 'last' for gdb.Symtab_and_line. * NEWS (Python Scripting): Add entry about the new attribute. * python/py-symtab.c (salpy_get_last): New function which implements the get method for the 'last' attribute of gdb.Symtab_and_line. (sal_object_getset): Add entry for the 'last' attribute. doc/ * gdb.texinfo (Symbol Tables In Python): Add description about the new 'last' attribute of gdb.Symtab_and line. testsuite/ * gdb.python/py-symtab.exp: Add tests to test the new attribute 'last' of gdb.Symtab_and_line. * gdb.python/py-symbol.c: Move break point comment to enable testing of gdb.Symtab_and_line.last. Thanks, Siva Chandra --20cf302d4ce0a5d61c04c33ad50a Content-Type: text/plain; charset=US-ASCII; name="sal_end_patch_v5.txt" Content-Disposition: attachment; filename="sal_end_patch_v5.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h3ud691a0 Content-length: 6019 SW5kZXg6IE5FV1MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog L2N2cy9zcmMvc3JjL2dkYi9ORVdTLHYKcmV0cmlldmluZyByZXZpc2lvbiAx LjUyOApkaWZmIC11IC1wIC1yMS41MjggTkVXUwotLS0gTkVXUwkyMyBKdW4g MjAxMiAyMjoyMzo0NiAtMDAwMAkxLjUyOAorKysgTkVXUwkyNCBKdW4gMjAx MiAxNjo1NTo0MCAtMDAwMApAQCAtNjAsNiArNjAsOSBAQAogICAqKiBOZXcg ZnVuY3Rpb24gZ2RiLmZpbmRfcGNfbGluZSB3aGljaCByZXR1cm5zIHRoZSBn ZGIuU3ltdGFiX2FuZF9saW5lCiAgICAgIG9iamVjdCBhc3NvY2lhdGVkIHdp dGggYSBQQyB2YWx1ZS4KIAorICAqKiBnZGIuU3ltdGFiX2FuZF9saW5lIGhh cyBuZXcgYXR0cmlidXRlICdsYXN0JyB3aGljaCBob2xkcyB0aGUgZW5kCisg ICAgIG9mIHRoZSBhZGRyZXNzIHJhbmdlIG9jY3VwaWVkIGJ5IGNvZGUgZm9y IHRoZSBjdXJyZW50IHNvdXJjZSBsaW5lLgorCiAqIEdvIGxhbmd1YWdlIHN1 cHBvcnQuCiAgIEdEQiBub3cgc3VwcG9ydHMgZGVidWdnaW5nIHByb2dyYW1z IHdyaXR0ZW4gaW4gdGhlIEdvIHByb2dyYW1taW5nCiAgIGxhbmd1YWdlLgpJ bmRleDogZG9jL2dkYi50ZXhpbmZvCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K UkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvZG9jL2dkYi50ZXhpbmZvLHYK cmV0cmlldmluZyByZXZpc2lvbiAxLjk3OQpkaWZmIC11IC1wIC1yMS45Nzkg Z2RiLnRleGluZm8KLS0tIGRvYy9nZGIudGV4aW5mbwkyMyBKdW4gMjAxMiAy MjoyMzo0NyAtMDAwMAkxLjk3OQorKysgZG9jL2dkYi50ZXhpbmZvCTI0IEp1 biAyMDEyIDE2OjU1OjQ2IC0wMDAwCkBAIC0yNTI2NCw2ICsyNTI2NCwxMSBA QCBJbmRpY2F0ZXMgdGhlIGN1cnJlbnQgcHJvZ3JhbSBjb3VudGVyIGFkCiB3 cml0YWJsZS4KIEBlbmQgZGVmdmFyCiAKK0BkZWZ2YXIgU3ltdGFiX2FuZF9s aW5lLmxhc3QKK0luZGljYXRlcyB0aGUgZW5kIG9mIHRoZSBhZGRyZXNzIHJh bmdlIG9jY3VwaWVkIGJ5IGNvZGUgZm9yIHRoZSBjdXJyZW50Citzb3VyY2Ug bGluZS4gIFRoaXMgYXR0cmlidXRlIGlzIG5vdCB3cml0YWJsZS4KK0BlbmQg ZGVmdmFyCisKIEBkZWZ2YXIgU3ltdGFiX2FuZF9saW5lLmxpbmUKIEluZGlj YXRlcyB0aGUgY3VycmVudCBsaW5lIG51bWJlciBmb3IgdGhpcyBvYmplY3Qu ICBUaGlzCiBhdHRyaWJ1dGUgaXMgbm90IHdyaXRhYmxlLgpJbmRleDogcHl0 aG9uL3B5LXN5bXRhYi5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp bGU6IC9jdnMvc3JjL3NyYy9nZGIvcHl0aG9uL3B5LXN5bXRhYi5jLHYKcmV0 cmlldmluZyByZXZpc2lvbiAxLjkKZGlmZiAtdSAtcCAtcjEuOSBweS1zeW10 YWIuYwotLS0gcHl0aG9uL3B5LXN5bXRhYi5jCTMgTWF5IDIwMTIgMDc6MDc6 MjUgLTAwMDAJMS45CisrKyBweXRob24vcHktc3ltdGFiLmMJMjQgSnVuIDIw MTIgMTY6NTU6NDcgLTAwMDAKQEAgLTIzNyw2ICsyMzcsMjIgQEAgc2FscHlf Z2V0X3BjIChQeU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvcwogICByZXR1cm4g Z2RiX3B5X2xvbmdfZnJvbV91bG9uZ2VzdCAoc2FsLT5wYyk7CiB9CiAKKy8q IEltcGxlbWVudGF0aW9uIG9mIHRoZSBnZXQgbWV0aG9kIGZvciB0aGUgJ2xh c3QnIGF0dHJpYnV0ZSBvZgorICAgZ2RiLlN5bXRhYl9hbmRfbGluZS4gICov CisKK3N0YXRpYyBQeU9iamVjdCAqCitzYWxweV9nZXRfbGFzdCAoUHlPYmpl Y3QgKnNlbGYsIHZvaWQgKmNsb3N1cmUpCit7CisgIHN0cnVjdCBzeW10YWJf YW5kX2xpbmUgKnNhbCA9IE5VTEw7CisKKyAgU0FMUFlfUkVRVUlSRV9WQUxJ RCAoc2VsZiwgc2FsKTsKKworICBpZiAoc2FsLT5lbmQgPiAwKQorICAgIHJl dHVybiBnZGJfcHlfbG9uZ19mcm9tX3Vsb25nZXN0IChzYWwtPmVuZCAtIDEp OworICBlbHNlCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKIHN0YXRpYyBQ eU9iamVjdCAqCiBzYWxweV9nZXRfbGluZSAoUHlPYmplY3QgKnNlbGYsIHZv aWQgKmNsb3N1cmUpCiB7CkBAIC01NTYsNiArNTcyLDggQEAgc3RhdGljIFB5 VHlwZU9iamVjdCBzeW10YWJfb2JqZWN0X3R5cGUgPQogc3RhdGljIFB5R2V0 U2V0RGVmIHNhbF9vYmplY3RfZ2V0c2V0W10gPSB7CiAgIHsgInN5bXRhYiIs IHNhbHB5X2dldF9zeW10YWIsIE5VTEwsICJTeW10YWIgb2JqZWN0LiIsIE5V TEwgfSwKICAgeyAicGMiLCBzYWxweV9nZXRfcGMsIE5VTEwsICJSZXR1cm4g dGhlIHN5bXRhYl9hbmRfbGluZSdzIHBjLiIsIE5VTEwgfSwKKyAgeyAibGFz dCIsIHNhbHB5X2dldF9sYXN0LCBOVUxMLAorICAgICJSZXR1cm4gdGhlIHN5 bXRhYl9hbmRfbGluZSdzIGxhc3QgYWRkcmVzcy4iLCBOVUxMIH0sCiAgIHsg ImxpbmUiLCBzYWxweV9nZXRfbGluZSwgTlVMTCwKICAgICAiUmV0dXJuIHRo ZSBzeW10YWJfYW5kX2xpbmUncyBsaW5lLiIsIE5VTEwgfSwKICAge05VTEx9 ICAvKiBTZW50aW5lbCAqLwpJbmRleDogdGVzdHN1aXRlL2dkYi5weXRob24v cHktc3ltYm9sLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog L2N2cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1zeW1i b2wuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS42CmRpZmYgLXUgLXAgLXIx LjYgcHktc3ltYm9sLmMKLS0tIHRlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXN5 bWJvbC5jCTMgTWF5IDIwMTIgMDc6MDc6MjYgLTAwMDAJMS42CisrKyB0ZXN0 c3VpdGUvZ2RiLnB5dGhvbi9weS1zeW1ib2wuYwkyNCBKdW4gMjAxMiAxNjo1 NTo0NyAtMDAwMApAQCAtNDAsOCArNDAsOCBAQCBpbnQgcXEgPSA3MjsJCQkv KiBsaW5lIG9mIHFxICovCiBpbnQgZnVuYyAoaW50IGFyZykKIHsKICAgaW50 IGkgPSAyOwotICBpID0gaSAqIGFyZzsKLSAgcmV0dXJuIGFyZzsgLyogQmxv Y2sgYnJlYWsgaGVyZS4gICovCisgIGkgPSBpICogYXJnOyAvKiBCbG9jayBi cmVhayBoZXJlLiAgKi8KKyAgcmV0dXJuIGFyZzsKIH0KIAogc3RydWN0IHNp bXBsZV9zdHJ1Y3QKSW5kZXg6IHRlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LXN5 bXRhYi5leHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2 cy9zcmMvc3JjL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1zeW10YWIu ZXhwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjEwCmRpZmYgLXUgLXAgLXIx LjEwIHB5LXN5bXRhYi5leHAKLS0tIHRlc3RzdWl0ZS9nZGIucHl0aG9uL3B5 LXN5bXRhYi5leHAJMjIgSnVuIDIwMTIgMTc6NTk6MzMgLTAwMDAJMS4xMAor KysgdGVzdHN1aXRlL2dkYi5weXRob24vcHktc3ltdGFiLmV4cAkyNCBKdW4g MjAxMiAxNjo1NTo0NyAtMDAwMApAQCAtNDYsMTAgKzQ2LDEzIEBAIGdkYl9w eV90ZXN0X3NpbGVudF9jbWQgInB5dGhvbiBzdGF0aWNfYmwKIGdkYl9weV90 ZXN0X3NpbGVudF9jbWQgInB5dGhvbiBnbG9iYWxfc3ltYm9scyA9IFxbXF07 IHN0YXRpY19zeW1ib2xzID0gXFtcXSIgIlNldCB1cCBzeW1ib2wgbmFtZSBs aXN0cyIgMAogZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIGZvciBz eW0gaW4gZ2xvYmFsX2Jsb2NrOiBnbG9iYWxfc3ltYm9scy5hcHBlbmQoc3lt Lm5hbWUpIiAiR2V0IGdsb2JhbCBzeW1ib2wgbmFtZXMiIDAKIGdkYl9weV90 ZXN0X3NpbGVudF9jbWQgInB5dGhvbiBmb3Igc3ltIGluIHN0YXRpY19ibG9j azogc3RhdGljX3N5bWJvbHMuYXBwZW5kKHN5bS5uYW1lKSIgIkdldCBzdGF0 aWMgc3ltYm9sIG5hbWVzIiAwCitnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJz dGVwIiAiU3RlcCB0byB0aGUgbmV4dCBsaW5lIiAwCitnZGJfcHlfdGVzdF9z aWxlbnRfY21kICJweXRob24gbmV3X3BjID0gZ2RiLnNlbGVjdGVkX2ZyYW1l KCkuZmluZF9zYWwoKS5wYyIgIkdldCBuZXcgUEMiIDAKIAogIyBUZXN0IHNh bC4KIGdkYl90ZXN0ICJweXRob24gcHJpbnQgc2FsLnN5bXRhYiIgIi4qZ2Ri LnB5dGhvbi9weS1zeW1ib2wuYy4qIiAiVGVzdCBzeW10YWIiCiBnZGJfdGVz dCAicHl0aG9uIHByaW50IHNhbC5wYyIgIiR7ZGVjaW1hbH0iICJUZXN0IHNh bC5wYyIKK2dkYl90ZXN0ICJweXRob24gcHJpbnQgc2FsLmxhc3QgPT0gKG5l d19wYyAtIDEpIiAiVHJ1ZSIgIlRlc3Qgc2FsLmxhc3QiCiBnZGJfdGVzdCAi cHl0aG9uIHByaW50IHNhbC5saW5lIiAiJGxpbmVfbm8iICJUZXN0IHNhbC5s aW5lIgogZ2RiX3Rlc3QgInB5dGhvbiBwcmludCBzYWwuaXNfdmFsaWQoKSIg IlRydWUiICJUZXN0IHNhbC5pc192YWxpZCIKIAo= --20cf302d4ce0a5d61c04c33ad50a--