From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 24 11:30:25 2014 Received: (at submit) by debbugs.gnu.org; 24 Feb 2014 16:30:25 +0000 Received: from localhost ([127.0.0.1]:38009 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WHyQC-0005KW-GM for submit@debbugs.gnu.org; Mon, 24 Feb 2014 11:30:24 -0500 Received: from eggs.gnu.org ([208.118.235.92]:53667) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WHsMo-0008UQ-5k for submit@debbugs.gnu.org; Mon, 24 Feb 2014 05:02:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WHsMa-00029l-DG for submit@debbugs.gnu.org; Mon, 24 Feb 2014 05:02:24 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:47681) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WHsMa-00029h-9C for submit@debbugs.gnu.org; Mon, 24 Feb 2014 05:02:16 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55351) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WHsMR-0006M4-Po for bug-grep@gnu.org; Mon, 24 Feb 2014 05:02:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WHsMI-00026H-3n for bug-grep@gnu.org; Mon, 24 Feb 2014 05:02:07 -0500 Received: from mail-wi0-x22f.google.com ([2a00:1450:400c:c05::22f]:45069) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WHsMH-000261-TE for bug-grep@gnu.org; Mon, 24 Feb 2014 05:01:58 -0500 Received: by mail-wi0-f175.google.com with SMTP id hm4so2827448wib.2 for ; Mon, 24 Feb 2014 02:01:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:mime-version:content-type :content-disposition:user-agent; bh=FY6Iqrc8/dOPBp5AeykaJdcgTy+W/ytzISHsJo5wRj8=; b=kKIoJgqVegyluERyb5+2uCRP9DTawA3F9n1Dm9Jg/IrBHbv4gjc2A5052NRKq94jx1 iCB42iIuKDhfq4mAaWCMNwXq2QK4Ws2DOYdQ7oufWqXAG5v/gh1pMOpzGbrOex3yB5T/ ERujAiT8yFCQpvwQUB6r4OtIeC3sxQcRT7LikpPrVRPiEQUMZlN3uTtNT0oEbXglf71S zSA2s04OJ0WMfFd0Oyq3jjrAdeeIyk6K+c61u8IxdUaz8+z4VmDLNM2PeqYAMxpTbYvV 5Ftc9ZapmYJ7d9hOhNkHbVyhiXP6LNMGpGnesdeTkJ6PNcBE6ln+ifH4g9N20qxrpvAC l5fg== X-Received: by 10.181.12.16 with SMTP id em16mr13531293wid.3.1393236116733; Mon, 24 Feb 2014 02:01:56 -0800 (PST) Received: from chaz.gmail.com (188-223-3-27.zone14.bethere.co.uk. [188.223.3.27]) by mx.google.com with ESMTPSA id pm2sm23366707wic.0.2014.02.24.02.01.55 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Mon, 24 Feb 2014 02:01:56 -0800 (PST) Date: Mon, 24 Feb 2014 10:01:54 +0000 From: Stephane Chazelas To: bug-grep@gnu.org Subject: grep -wP and backreferences Message-ID: <20140224100154.GB14860@chaz.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Mon, 24 Feb 2014 11:30:22 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -4.0 (----) Hello, Backreferences don't work with -w or -x in combination with -P: $ echo aa | grep -Pw '(.)\1' $ Or they work in an unexpected way: $ echo aa | grep -Pw '(.)\2' aa The fix is simple: --- src/pcresearch.c~ 2014-02-24 09:59:56.864374362 +0000 +++ src/pcresearch.c 2014-02-24 07:33:04.666398105 +0000 @@ -75,9 +75,9 @@ Pcompile (char const *pattern, size_t si *n = '\0'; if (match_lines) - strcpy (n, "^("); + strcpy (n, "^(?:"); if (match_words) - strcpy (n, "\\b("); + strcpy (n, "\\b(?:"); n += strlen (n); /* The PCRE interface doesn't allow NUL bytes in the pattern, so From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 24 15:00:43 2014 Received: (at 16865) by debbugs.gnu.org; 24 Feb 2014 20:00:43 +0000 Received: from localhost ([127.0.0.1]:38182 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WI1hf-000343-Eo for submit@debbugs.gnu.org; Mon, 24 Feb 2014 15:00:42 -0500 Received: from mail-vc0-f176.google.com ([209.85.220.176]:63498) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WI1hc-00033g-3J for 16865@debbugs.gnu.org; Mon, 24 Feb 2014 15:00:36 -0500 Received: by mail-vc0-f176.google.com with SMTP id la4so6170712vcb.7 for <16865@debbugs.gnu.org>; Mon, 24 Feb 2014 12:00:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=tH1lmu23OWZhpw2DH+lnVgBofbt+4NoMr/AK3cD3HPk=; b=PDx0UweMlmbjnaTWdYQTmHVu1euFk5Dtev4CgYXiE/nIOADRhNPwlzSHq7zqgmVLSp 4q4X+gNBoMzu5D5KxKz1GC7gFOMv3O5WkNN+/2JYir2WoA8HTZ+ldxxGg8MLMtR92pOt 9l393MQHc5UL1ZEte5ec/1c/BH1c05buScZ6eeCOsKuKa/yetfuuHzyw2JaezVk0AcXA cXl+QNfofZCHUSWbrmUw6YPoB2/a9E+ys799ckqxDVLGL69sBE8UEE8XFYCAY/0A2rdW 1M3LP10dedy7bx4x3Ld83RH8zsHfJiEmoIvHN5ekCU7aej7Enq+ymKHkzmOk8CAzYGyF jtOg== X-Received: by 10.52.99.227 with SMTP id et3mr1533503vdb.53.1393272030297; Mon, 24 Feb 2014 12:00:30 -0800 (PST) MIME-Version: 1.0 Received: by 10.58.12.69 with HTTP; Mon, 24 Feb 2014 12:00:08 -0800 (PST) In-Reply-To: <20140224100154.GB14860@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> From: Jim Meyering Date: Mon, 24 Feb 2014 12:00:08 -0800 X-Google-Sender-Auth: qrlTfBnGupxYEf-eSVqdmbN9fo0 Message-ID: Subject: Re: bug#16865: grep -wP and backreferences To: Stephane Chazelas Content-Type: multipart/mixed; boundary=20cf307f34b27143c704f32c6c38 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865 Cc: 16865@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) --20cf307f34b27143c704f32c6c38 Content-Type: text/plain; charset=ISO-8859-1 On Mon, Feb 24, 2014 at 2:01 AM, Stephane Chazelas wrote: > Hello, > > Backreferences don't work with -w or -x in combination with -P: > > $ echo aa | grep -Pw '(.)\1' > $ > > Or they work in an unexpected way: > > $ echo aa | grep -Pw '(.)\2' > aa > > The fix is simple: > > > --- src/pcresearch.c~ 2014-02-24 09:59:56.864374362 +0000 > +++ src/pcresearch.c 2014-02-24 07:33:04.666398105 +0000 > @@ -75,9 +75,9 @@ Pcompile (char const *pattern, size_t si Thanks a lot for the patch. I've converted it to a proper commit with NEWS and a test case. Please ack the attached if it's all ok with you (you're still the "Author:"): --20cf307f34b27143c704f32c6c38 Content-Type: text/plain; charset=US-ASCII; name="k.txt" Content-Disposition: attachment; filename="k.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hs2660xe0 RnJvbSBiZmQyMTkzMWIzY2QwODhkNjQyYTE5MGU5ZjAzMDIxNGRmMDQwNDVkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVwaGFuZSBDaGF6ZWxhcyA8c3RlcGhhbmUuY2hhemVsYXNA Z21haWwuY29tPgpEYXRlOiBNb24sIDI0IEZlYiAyMDE0IDExOjU0OjA5IC0wODAwClN1YmplY3Q6 IFtQQVRDSF0gZ3JlcCAtUDogZml4IGl0IHNvIGJhY2tyZWZlcmVuY2VzIG5vdyB3b3JrIHdpdGgg LXcgYW5kIC14CgpUbyBpbXBsZW1lbnQgLXcgYW5kIC14LCB3ZSBicmFja2V0IHRoZSBzZWFyY2gg dGVybSB3aXRoIHBhcmVudGhlc2VzLgpIb3dldmVyLCB0aGF0IHNldCBvZiBwYXJlbnRoZXNlcyBo YWQgdGhlIGRlZmF1bHQgc2VtYW50aWNzIG9mCiJjYXB0dXJpbmciLCBpLmUuLCBjcmVhdGluZyBh IGJhY2tyZWZlcmVuY2VhYmxlIG1hdGNoZWQgcXVhbnRpdHkuCkluc3RlYWQsIHVzZSAoPzouLi4p LCB0byBjcmVhdGUgYSBub24tY2FwdHVyaW5nIGdyb3VwLgoqIHNyYy9wY3Jlc2VhcmNoLmMgKFBj b21waWxlKTogVXNlICg/Oi4uLikgcmF0aGVyIHRoYW4gKC4uLikuCiogTkVXUyAoQnVnIGZpeGVz KTogTWVudGlvbiBpdC4KKiB0ZXN0cy9wY3JlLXd4LWJhY2tyZWY6IE5ldyBmaWxlLgoqIHRlc3Rz L01ha2VmaWxlLmFtIChURVNUUyk6IEFkZCBpdC4KLS0tCiBORVdTICAgICAgICAgICAgICAgICAg fCAgNiArKysrKysKIHNyYy9wY3Jlc2VhcmNoLmMgICAgICB8ICA0ICsrLS0KIHRlc3RzL01ha2Vm aWxlLmFtICAgICB8ICAxICsKIHRlc3RzL3BjcmUtd3gtYmFja3JlZiB8IDI4ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDc1NSB0ZXN0cy9wY3JlLXd4LWJhY2tyZWYKCmRp ZmYgLS1naXQgYS9ORVdTIGIvTkVXUwppbmRleCA3NzFmZDgwLi40OWZlOTg0IDEwMDY0NAotLS0g YS9ORVdTCisrKyBiL05FV1MKQEAgLTIsNiArMiwxMiBAQCBHTlUgZ3JlcCBORVdTICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLSotIG91dGxpbmUgLSotCgogKiBOb3Rld29ydGh5 IGNoYW5nZXMgaW4gcmVsZWFzZSA/Lj8gKD8/Pz8tPz8tPz8pIFs/XQoKKyoqIEJ1ZyBmaXhlcwor CisgIGdyZXAgLVAgbm93IHdvcmtzIHdpdGggLXcgYW5kIC14IGFuZCBiYWNrcmVmZXJlbmNlcy4g QmVmb3JlLAorICBlY2hvIGFhfGdyZXAgLVB3ICcoLilcMScgd291bGQgZmFpbCB0byBtYXRjaCwg eWV0CisgIGVjaG8gYWF8Z3JlcCAtUHcgJyguKVwyJyB3b3VsZCBtYXRjaC4KKwoKICogTm90ZXdv cnRoeSBjaGFuZ2VzIGluIHJlbGVhc2UgMi4xOCAoMjAxNC0wMi0yMCkgW3N0YWJsZV0KCmRpZmYg LS1naXQgYS9zcmMvcGNyZXNlYXJjaC5jIGIvc3JjL3BjcmVzZWFyY2guYwppbmRleCA1YjViYTNl Li5kNGEyMGZmIDEwMDY0NAotLS0gYS9zcmMvcGNyZXNlYXJjaC5jCisrKyBiL3NyYy9wY3Jlc2Vh cmNoLmMKQEAgLTc1LDkgKzc1LDkgQEAgUGNvbXBpbGUgKGNoYXIgY29uc3QgKnBhdHRlcm4sIHNp emVfdCBzaXplKQoKICAgKm4gPSAnXDAnOwogICBpZiAobWF0Y2hfbGluZXMpCi0gICAgc3RyY3B5 IChuLCAiXigiKTsKKyAgICBzdHJjcHkgKG4sICJeKD86Iik7CiAgIGlmIChtYXRjaF93b3JkcykK LSAgICBzdHJjcHkgKG4sICJcXGIoIik7CisgICAgc3RyY3B5IChuLCAiXFxiKD86Iik7CiAgIG4g Kz0gc3RybGVuIChuKTsKCiAgIC8qIFRoZSBQQ1JFIGludGVyZmFjZSBkb2Vzbid0IGFsbG93IE5V TCBieXRlcyBpbiB0aGUgcGF0dGVybiwgc28KZGlmZiAtLWdpdCBhL3Rlc3RzL01ha2VmaWxlLmFt IGIvdGVzdHMvTWFrZWZpbGUuYW0KaW5kZXggNGZmZWE4NS4uZWNiZTBlNiAxMDA2NDQKLS0tIGEv dGVzdHMvTWFrZWZpbGUuYW0KKysrIGIvdGVzdHMvTWFrZWZpbGUuYW0KQEAgLTgzLDYgKzgzLDcg QEAgVEVTVFMgPQkJCQkJCVwKICAgcGNyZS1hYm9ydAkJCQkJXAogICBwY3JlLWludmFsaWQtdXRm OC1pbnB1dAkJCVwKICAgcGNyZS11dGY4CQkJCQlcCisgIHBjcmUtd3gtYmFja3JlZgkJCQlcCiAg IHBjcmUtegkJCQkJXAogICBwcmVmaXgtb2YtbXVsdGlieXRlCQkJCVwKICAgci1kb3QJCQkJCQlc CmRpZmYgLS1naXQgYS90ZXN0cy9wY3JlLXd4LWJhY2tyZWYgYi90ZXN0cy9wY3JlLXd4LWJhY2ty ZWYKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjQzYWE5YgotLS0gL2Rldi9u dWxsCisrKyBiL3Rlc3RzL3BjcmUtd3gtYmFja3JlZgpAQCAtMCwwICsxLDI4IEBACisjISAvYmlu L3NoCisjIEJlZm9yZSBncmVwLTIuMTksIGdyZXAgLVAgYW5kIC13Ly14IHdvdWxkIG5vdCB3aXRo IGEgYmFja3JlZmVyZW5jZS4KKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE0IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLgorIworIyBDb3B5aW5nIGFuZCBkaXN0cmlidXRpb24gb2YgdGhpcyBm aWxlLCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLAorIyBhcmUgcGVybWl0dGVkIGluIGFu eSBtZWRpdW0gd2l0aG91dCByb3lhbHR5IHByb3ZpZGVkIHRoZSBjb3B5cmlnaHQKKyMgbm90aWNl IGFuZCB0aGlzIG5vdGljZSBhcmUgcHJlc2VydmVkLgorCisuICIke3NyY2Rpcj0ufS9pbml0LnNo IjsgcGF0aF9wcmVwZW5kXyAuLi9zcmMKK3JlcXVpcmVfcGNyZV8KKworZWNobyBhYSA+IGluIHx8 IGZyYW1ld29ya19mYWlsdXJlXworZWNobyAnZ3JlcDogcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVu dCBzdWJwYXR0ZXJuJyA+IGV4cC1lcnIgXAorICB8fCBmcmFtZXdvcmtfZmFpbHVyZV8KKworZmFp bD0wCisKK2ZvciB4dyBpbiB4IHc7IGRvCisgIGdyZXAgLVAkeHcgJyguKVwxJyBpbiA+IG91dCAy PiYxIHx8IGZhaWw9MQorICBjb21wYXJlIG91dCBpbiB8fCBmYWlsPTEKKworICBncmVwIC1QJHh3 ICcoLilcMicgaW4gPiBvdXQgMj4gZXJyICYmIGZhaWw9MQorICBjb21wYXJlIC9kZXYvbnVsbCBv dXQgfHwgZmFpbD0xCisgIGNvbXBhcmUgZXhwLWVyciBlcnIgfHwgZmFpbD0xCitkb25lCisKK0V4 aXQgJGZhaWwKLS0gCjEuOS4wCgo= --20cf307f34b27143c704f32c6c38-- From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 24 16:20:13 2014 Received: (at 16865) by debbugs.gnu.org; 24 Feb 2014 21:20:13 +0000 Received: from localhost ([127.0.0.1]:38252 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WI2we-0007mo-Nj for submit@debbugs.gnu.org; Mon, 24 Feb 2014 16:20:13 -0500 Received: from mail-wi0-f177.google.com ([209.85.212.177]:41616) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WI2wc-0007mX-4t for 16865@debbugs.gnu.org; Mon, 24 Feb 2014 16:20:11 -0500 Received: by mail-wi0-f177.google.com with SMTP id e4so3615906wiv.10 for <16865@debbugs.gnu.org>; Mon, 24 Feb 2014 13:20:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=ICxkWKTcjADXzgYTCfWEFSqOJD6sS62OTCDl8U+4OTs=; b=CgMjWxP3mwubQJZHY3ZZtzqNcI39Cr/TfD6z/72BSY0j/GnghlnP3/loLOjpWqDIra 9wJZMUFjJRImIYToAkMsouziK7YDrFHoBhQ6xdPW3nboIplUT6ZT69bUMMtB5JvwjFCU DB2jXHy0vaxml5CcGXkLk6WBM3sUwZ3LmugyJTYyofFhqM9aSXZpVfXFDLFoeptUw1w2 jI9lxXdRmug2OSvRg17HJS2Uq8oYzkzqRHAWx/HFmi17MuI8GiUNMPSp1LbL5K1FkN2V wywyOvaqo336mxOnT5cqM7KLGRYyBF7iaqRvtE3hLVAyRcVNDn7u+TMPdvRwxXFDHSpb osjw== X-Received: by 10.194.174.234 with SMTP id bv10mr21017775wjc.66.1393276804135; Mon, 24 Feb 2014 13:20:04 -0800 (PST) Received: from chaz.gmail.com (188-223-3-27.zone14.bethere.co.uk. [188.223.3.27]) by mx.google.com with ESMTPSA id cm5sm27702022wid.5.2014.02.24.13.20.02 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Mon, 24 Feb 2014 13:20:03 -0800 (PST) Date: Mon, 24 Feb 2014 21:20:01 +0000 From: Stephane Chazelas To: Jim Meyering Subject: Re: bug#16865: grep -wP and backreferences Message-ID: <20140224212001.GC14860@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865 Cc: 16865@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) Fine by me, thanks. BTW, as discussed in another bug, the -w/-x invalidate the (*UCP) and other PCRE special sequences. Chances are we can't easily do much about it, but it may still be worth documenting. Like, one should use grep -P '(*UCP)\bword\b' as grep -wP '(*UCP)word' won't work (pcregrep has the same problem). In another bug, I've seen someone commenting that grep -wP 'a)(b' doesn't give the error message that one would expect (not that I'd expect anyone would care). A last note: with -w, pcregrep wraps the regexp in \b...\b instead of \b(?:...)\b, so it could be that those brackets are not necessary in the first place. Sorry I lied, it was not the last note ;-). Note the difference: $ echo a@@b | grep -w @@ $ echo a@@b | grep -Pw @@ a@@b Maybe instead of \b(?:...)\b, we could use (? On Mon, Feb 24, 2014 at 2:01 AM, Stephane Chazelas > wrote: > > Hello, > > > > Backreferences don't work with -w or -x in combination with -P: > > > > $ echo aa | grep -Pw '(.)\1' > > $ > > > > Or they work in an unexpected way: > > > > $ echo aa | grep -Pw '(.)\2' > > aa > > > > The fix is simple: > > > > > > --- src/pcresearch.c~ 2014-02-24 09:59:56.864374362 +0000 > > +++ src/pcresearch.c 2014-02-24 07:33:04.666398105 +0000 > > @@ -75,9 +75,9 @@ Pcompile (char const *pattern, size_t si > > Thanks a lot for the patch. > I've converted it to a proper commit with NEWS and a test case. > Please ack the attached if it's all ok with you (you're still the "Author:"): > From bfd21931b3cd088d642a190e9f030214df04045d Mon Sep 17 00:00:00 2001 > From: Stephane Chazelas > Date: Mon, 24 Feb 2014 11:54:09 -0800 > Subject: [PATCH] grep -P: fix it so backreferences now work with -w and -x > > To implement -w and -x, we bracket the search term with parentheses. > However, that set of parentheses had the default semantics of > "capturing", i.e., creating a backreferenceable matched quantity. > Instead, use (?:...), to create a non-capturing group. > * src/pcresearch.c (Pcompile): Use (?:...) rather than (...). > * NEWS (Bug fixes): Mention it. > * tests/pcre-wx-backref: New file. > * tests/Makefile.am (TESTS): Add it. > --- > NEWS | 6 ++++++ > src/pcresearch.c | 4 ++-- > tests/Makefile.am | 1 + > tests/pcre-wx-backref | 28 ++++++++++++++++++++++++++++ > 4 files changed, 37 insertions(+), 2 deletions(-) > create mode 100755 tests/pcre-wx-backref > > diff --git a/NEWS b/NEWS > index 771fd80..49fe984 100644 > --- a/NEWS > +++ b/NEWS > @@ -2,6 +2,12 @@ GNU grep NEWS -*- outline -*- > > * Noteworthy changes in release ?.? (????-??-??) [?] > > +** Bug fixes > + > + grep -P now works with -w and -x and backreferences. Before, > + echo aa|grep -Pw '(.)\1' would fail to match, yet > + echo aa|grep -Pw '(.)\2' would match. > + > > * Noteworthy changes in release 2.18 (2014-02-20) [stable] > > diff --git a/src/pcresearch.c b/src/pcresearch.c > index 5b5ba3e..d4a20ff 100644 > --- a/src/pcresearch.c > +++ b/src/pcresearch.c > @@ -75,9 +75,9 @@ Pcompile (char const *pattern, size_t size) > > *n = '\0'; > if (match_lines) > - strcpy (n, "^("); > + strcpy (n, "^(?:"); > if (match_words) > - strcpy (n, "\\b("); > + strcpy (n, "\\b(?:"); > n += strlen (n); > > /* The PCRE interface doesn't allow NUL bytes in the pattern, so > diff --git a/tests/Makefile.am b/tests/Makefile.am > index 4ffea85..ecbe0e6 100644 > --- a/tests/Makefile.am > +++ b/tests/Makefile.am > @@ -83,6 +83,7 @@ TESTS = \ > pcre-abort \ > pcre-invalid-utf8-input \ > pcre-utf8 \ > + pcre-wx-backref \ > pcre-z \ > prefix-of-multibyte \ > r-dot \ > diff --git a/tests/pcre-wx-backref b/tests/pcre-wx-backref > new file mode 100755 > index 0000000..643aa9b > --- /dev/null > +++ b/tests/pcre-wx-backref > @@ -0,0 +1,28 @@ > +#! /bin/sh > +# Before grep-2.19, grep -P and -w/-x would not with a backreference. > +# > +# Copyright (C) 2014 Free Software Foundation, Inc. > +# > +# Copying and distribution of this file, with or without modification, > +# are permitted in any medium without royalty provided the copyright > +# notice and this notice are preserved. > + > +. "${srcdir=.}/init.sh"; path_prepend_ ../src > +require_pcre_ > + > +echo aa > in || framework_failure_ > +echo 'grep: reference to non-existent subpattern' > exp-err \ > + || framework_failure_ > + > +fail=0 > + > +for xw in x w; do > + grep -P$xw '(.)\1' in > out 2>&1 || fail=1 > + compare out in || fail=1 > + > + grep -P$xw '(.)\2' in > out 2> err && fail=1 > + compare /dev/null out || fail=1 > + compare exp-err err || fail=1 > +done > + > +Exit $fail > -- > 1.9.0 > From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 24 23:56:37 2014 Received: (at 16865) by debbugs.gnu.org; 25 Feb 2014 04:56:37 +0000 Received: from localhost ([127.0.0.1]:38426 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIA4K-0005CH-Nn for submit@debbugs.gnu.org; Mon, 24 Feb 2014 23:56:36 -0500 Received: from mail-pa0-f53.google.com ([209.85.220.53]:52531) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIA4J-0005C5-Fd for 16865@debbugs.gnu.org; Mon, 24 Feb 2014 23:56:36 -0500 Received: by mail-pa0-f53.google.com with SMTP id lj1so7545620pab.12 for <16865@debbugs.gnu.org>; Mon, 24 Feb 2014 20:56:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=dGrcs52gdb/SatVF0HrRKHg0XXWdDHWvJHBAARlHelM=; b=xFVCIHkiWPXPj3gUEGZRMPEyviukJDYwluPk5ZFn4a7dTFRYqkaDh2lFXDg9uyt1ZG bKEGwMKuoItQnHzW8YD2wYldKy4uzMQUlDP2yHskxV6GOWDBo0UMkOuHX9budn2xTEFC TdyGfkKgMTzjsivamaVCPu6iC4kbDYne4RnUuwaME++RTCESKheGVwHmq2NknpWgy+x/ sjg1qEiZb8GUcgk8LCvBQFSzxT/1NnFrRsNIdNyqiAeurnv0DWOuPQFxIeClrACDyBHR 6XUiaJtlmN95LCC1/+kK+ShQMIV7hO5Vvd2u8aty9pKofiJUAD3sWZETiQIDESJ/evaF HZYQ== X-Received: by 10.68.211.164 with SMTP id nd4mr4170323pbc.44.1393304189203; Mon, 24 Feb 2014 20:56:29 -0800 (PST) MIME-Version: 1.0 Received: by 10.68.201.231 with HTTP; Mon, 24 Feb 2014 20:55:42 -0800 (PST) In-Reply-To: <20140224212001.GC14860@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> <20140224212001.GC14860@chaz.gmail.com> From: Jim Meyering Date: Mon, 24 Feb 2014 20:55:42 -0800 X-Google-Sender-Auth: 9GBoqjIH9H9mm83z4wiVsYt7HeI Message-ID: Subject: Re: bug#16865: grep -wP and backreferences To: Stephane Chazelas Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865 Cc: 16865@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) On Mon, Feb 24, 2014 at 1:20 PM, Stephane Chazelas wrote: > A last note: with -w, pcregrep wraps the regexp in \b...\b > instead of \b(?:...)\b, so it could be that those brackets are > not necessary in the first place. > > Sorry I lied, it was not the last note ;-). Note the difference: > > $ echo a@@b | grep -w @@ > $ echo a@@b | grep -Pw @@ > a@@b > > > Maybe instead of \b(?:...)\b, we could use (? > $ echo a%%b | grep -P '(? $ echo %aa% | grep -P '(? %aa% I like both suggestions. Making -wP work like grep's -w makes perfect sense. Care to prepare a patch to make it do that, with a separate test case? "git format-patch ..." output preferred, if you're game. I pushed the above patch, but would welcome another one. From debbugs-submit-bounces@debbugs.gnu.org Tue Feb 25 11:08:36 2014 Received: (at 16865) by debbugs.gnu.org; 25 Feb 2014 16:08:36 +0000 Received: from localhost ([127.0.0.1]:39569 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIKYc-0001LB-Vk for submit@debbugs.gnu.org; Tue, 25 Feb 2014 11:08:35 -0500 Received: from mail-wi0-f178.google.com ([209.85.212.178]:64159) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIKYZ-0001Kg-MQ for 16865@debbugs.gnu.org; Tue, 25 Feb 2014 11:08:32 -0500 Received: by mail-wi0-f178.google.com with SMTP id cc10so947832wib.5 for <16865@debbugs.gnu.org>; Tue, 25 Feb 2014 08:08:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=emN6UztboOjhYhjzHo0PH1neMQoTHgzwpkdS+wC+oK4=; b=JDpIr+fdh5JOOpcyLeQUQKnJo+m7TJpsANV4+KUG3uu2jk0eptnt3OgVVJo6F6o+0L tAGuoiBWlC8iXv3PlOm/KuidqhtSi2oUJ8x72uyeFJd07ViFQVkuuaEKG3ZHot9eLGvz GYtPBNyvzw06JUy8a1tZKBCNLzP7Q6Gp8slu3K3l7d2G/IahxyslI1CGKxRaaI8q+Mgu gl2RfW8RAhWP+MUnHm5zySdYm0Z4azyVJOAbu+JWb8/FJ807dxsUmQVNyO2VUvEV0+Cf F1fYNzs4AlZY+XQPcZOy2/vuKqsJD1YY+kdgW0VmMfoTH/QaO9pPXLr7DceaLrZVqp4o 8NJQ== X-Received: by 10.180.24.227 with SMTP id x3mr3790786wif.41.1393344505571; Tue, 25 Feb 2014 08:08:25 -0800 (PST) Received: from chaz.gmail.com (188-223-3-27.zone14.bethere.co.uk. [188.223.3.27]) by mx.google.com with ESMTPSA id n15sm1474083wij.3.2014.02.25.08.08.23 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 25 Feb 2014 08:08:24 -0800 (PST) Date: Tue, 25 Feb 2014 16:08:22 +0000 From: Stephane Chazelas To: Jim Meyering Subject: Re: bug#16865: grep -wP and backreferences Message-ID: <20140225160822.GC18853@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> <20140224212001.GC14860@chaz.gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="ikeVEW9yuYc//A+q" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865 Cc: 16865@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) --ikeVEW9yuYc//A+q Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 2014-02-24 20:55:42 -0800, Jim Meyering: > On Mon, Feb 24, 2014 at 1:20 PM, Stephane Chazelas > wrote: > > A last note: with -w, pcregrep wraps the regexp in \b...\b > > instead of \b(?:...)\b, so it could be that those brackets are > > not necessary in the first place. The brackets are actually needed in cases like: grep -Pw 'foo|bar' (pcregrep has a bug there). > > Maybe instead of \b(?:...)\b, we could use (? > > > $ echo a%%b | grep -P '(? > $ echo %aa% | grep -P '(? > %aa% > > I like both suggestions. Making -wP work like grep's -w makes perfect sense. > Care to prepare a patch to make it do that, with a separate test case? > "git format-patch ..." output preferred, if you're game. > > I pushed the above patch, but would welcome another one. Please find the patch attached. (note that tests/word-delim-multibyte fails for me, but it's not my doing, it was failing before). -- Stephane --ikeVEW9yuYc//A+q Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0001-Align-grep-Pw-with-grep-w.patch" >From c0f44ae6d988954557c0da533f336c9e522f570a Mon Sep 17 00:00:00 2001 From: Stephane Chazelas Date: Tue, 25 Feb 2014 15:55:04 +0000 Subject: [PATCH] Align grep -Pw with grep -w For the -w option, with -P, we used to look for the pattern surrounded by word boundaries. That's different from what grep -w does and what the documentation describes. Now align with grep -w and the documentation by using PCRE look-behind and look-ahead operators to match the pattern if it is not surrounded by word constituents. * src/pcresearch.c (Pcompile): Use (? in || framework_failure_ +grep -Pw aa in > out || fail=1 +compare out in || fail=1 + +echo a%%a > in || framework_failure_ +grep -Pw %% in > out && fail=1 +compare /dev/null out || fail=1 + +echo %%%% > in || framework_failure_ +grep -Pw %% in > out || fail=1 +compare out in || fail=1 + +echo %% > in || framework_failure_ +grep -Pw %% in > out || fail=1 +compare out in || fail=1 + +Exit $fail -- 1.8.5.3 --ikeVEW9yuYc//A+q-- From debbugs-submit-bounces@debbugs.gnu.org Tue Feb 25 13:04:02 2014 Received: (at 16865-done) by debbugs.gnu.org; 25 Feb 2014 18:04:02 +0000 Received: from localhost ([127.0.0.1]:39713 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIMML-0007Bf-0j for submit@debbugs.gnu.org; Tue, 25 Feb 2014 13:04:01 -0500 Received: from mail-pa0-f53.google.com ([209.85.220.53]:51159) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WIMME-0007B5-Is for 16865-done@debbugs.gnu.org; Tue, 25 Feb 2014 13:03:55 -0500 Received: by mail-pa0-f53.google.com with SMTP id lj1so8444944pab.40 for <16865-done@debbugs.gnu.org>; Tue, 25 Feb 2014 10:03:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=c1VmoPr9P2E9o7mEthG0jSXctrWaSY2/Y1YRoLh7D2A=; b=PsxqSti0cPoVpD35qxYIFbE2hvDJi92CxfPZqZDK7u7lRH3b6v6s2N7GOs854ag+Jd SMxQuItpxmMf2XxvfE6HQaQtAVsajKTEzj1XodLOwBXrgxT6UYe/pB3CZG6PYdmRtNRo 7XDLo2HOfKmvXkYTNlgXppklYonLWrOpfLvf4CgFKN56JpqrB9RSW9wQ2gQj6nwZ42xU 9QWNO63N/Fo/vGrad6PhRKflPnWj8I1qGKo5uJgLR6zcILt3kgXTAcXH/XA3rl9C7D3b u+NlHbaOnZ+plSaNAY8kzo3C0SomPzFfNvIOkiU8CR7TImb5u9THUsI8Ny9O/EG0JtlY aIjg== X-Received: by 10.66.159.132 with SMTP id xc4mr3045325pab.27.1393351428574; Tue, 25 Feb 2014 10:03:48 -0800 (PST) MIME-Version: 1.0 Received: by 10.68.201.231 with HTTP; Tue, 25 Feb 2014 10:03:28 -0800 (PST) In-Reply-To: <20140225160822.GC18853@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> <20140224212001.GC14860@chaz.gmail.com> <20140225160822.GC18853@chaz.gmail.com> From: Jim Meyering Date: Tue, 25 Feb 2014 10:03:28 -0800 X-Google-Sender-Auth: WjKunCp1PUgTNasxUkEp4v6CnkI Message-ID: Subject: Re: bug#16865: grep -wP and backreferences To: Stephane Chazelas Content-Type: multipart/mixed; boundary=047d7b6d7a10f3767d04f33ee894 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865-done Cc: 16865-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) --047d7b6d7a10f3767d04f33ee894 Content-Type: text/plain; charset=ISO-8859-1 On Tue, Feb 25, 2014 at 8:08 AM, Stephane Chazelas wrote: > 2014-02-24 20:55:42 -0800, Jim Meyering: >> On Mon, Feb 24, 2014 at 1:20 PM, Stephane Chazelas >> wrote: >> > A last note: with -w, pcregrep wraps the regexp in \b...\b >> > instead of \b(?:...)\b, so it could be that those brackets are >> > not necessary in the first place. > > The brackets are actually needed in cases like: > > grep -Pw 'foo|bar' > > (pcregrep has a bug there). > > >> > Maybe instead of \b(?:...)\b, we could use (?> > >> > $ echo a%%b | grep -P '(?> > $ echo %aa% | grep -P '(?> > %aa% >> >> I like both suggestions. Making -wP work like grep's -w makes perfect sense. >> Care to prepare a patch to make it do that, with a separate test case? >> "git format-patch ..." output preferred, if you're game. >> >> I pushed the above patch, but would welcome another one. > > Please find the patch attached. Thank you very much. Nearly perfect. I've uncapitalized the 1-line summary, changed a That to This in the log, and added examples to NEWS, and added an empty line to restore the 2-empty-line section delimiter. > (note that tests/word-delim-multibyte fails for me, but it's not > my doing, it was failing before). That's an XFAIL test (as noted in tests/Makefile.am), hence, expected to fail, and as long as it fails as expected, "make check" can still succeed. I've closed this ticket, and will push once you ack these changes. --047d7b6d7a10f3767d04f33ee894 Content-Type: application/octet-stream; name="0001-align-grep-Pw-with-grep-w.patch" Content-Disposition: attachment; filename="0001-align-grep-Pw-with-grep-w.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hs3hbvkn1 RnJvbSAwYjUwMDNkZDdjNDg1YmNlYmE4MWNmOGZmYTkwMWYzNjQ2YzI0MTdkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVwaGFuZSBDaGF6ZWxhcyA8c3RlcGhhbmUuY2hhemVsYXNA Z21haWwuY29tPgpEYXRlOiBUdWUsIDI1IEZlYiAyMDE0IDE1OjU1OjA0ICswMDAwClN1YmplY3Q6 IFtQQVRDSF0gYWxpZ24gZ3JlcCAtUHcgd2l0aCBncmVwIC13CgpGb3IgdGhlIC13IG9wdGlvbiwg d2l0aCAtUCwgd2UgdXNlZCB0byBsb29rIGZvciB0aGUgcGF0dGVybiBzdXJyb3VuZGVkIGJ5Cndv cmQgYm91bmRhcmllcy4gVGhhdCdzIGRpZmZlcmVudCBmcm9tIHdoYXQgZ3JlcCAtdyBkb2VzIGFu ZCB3aGF0IHRoZQpkb2N1bWVudGF0aW9uIGRlc2NyaWJlcy4gTm93IGFsaWduIHdpdGggZ3JlcCAt dyBhbmQgdGhlIGRvY3VtZW50YXRpb24gYnkKdXNpbmcgUENSRSBsb29rLWJlaGluZCBhbmQgbG9v ay1haGVhZCBvcGVyYXRvcnMgdG8gbWF0Y2ggdGhlIHBhdHRlcm4gaWYKaXQgaXMgbm90IHN1cnJv dW5kZWQgYnkgd29yZCBjb25zdGl0dWVudHMuCiogc3JjL3BjcmVzZWFyY2guYyAoUGNvbXBpbGUp OiBVc2UgKD88IVx3KSg/Oi4uLikoPyFcdykgcmF0aGVyIHRoYW4KXGIoPzouLi4pXGIuCiogTkVX UyAoQnVnIGZpeGVzKTogTWVudGlvbiBpdC4KKiB0ZXN0cy9wY3JlLXc6IE5ldyBmaWxlLgoqIHRl c3RzL01ha2VmaWxlLmFtIChURVNUUyk6IEFkZCBpdC4KVGhpcyBjb21wbGVtZW50cyB0aGUgZml4 IGZvciBodHRwOi8vZGViYnVncy5nbnUub3JnLzE2ODY1Ci0tLQogTkVXUyAgICAgICAgICAgICAg fCAgNyArKysrKysrCiBzcmMvcGNyZXNlYXJjaC5jICB8ICA0ICsrLS0KIHRlc3RzL01ha2VmaWxl LmFtIHwgIDEgKwogdGVzdHMvcGNyZS13ICAgICAgfCAzMSArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCiBjcmVhdGUgbW9kZSAxMDA3NTUgdGVzdHMvcGNyZS13CgpkaWZmIC0tZ2l0IGEvTkVXUyBi L05FV1MKaW5kZXggNDlmZTk4NC4uNjU3ZjNkMSAxMDA2NDQKLS0tIGEvTkVXUworKysgYi9ORVdT CkBAIC04LDYgKzgsMTMgQEAgR05VIGdyZXAgTkVXUyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC0qLSBvdXRsaW5lIC0qLQogICBlY2hvIGFhfGdyZXAgLVB3ICcoLilcMScgd291 bGQgZmFpbCB0byBtYXRjaCwgeWV0CiAgIGVjaG8gYWF8Z3JlcCAtUHcgJyguKVwyJyB3b3VsZCBt YXRjaC4KCisgIGdyZXAgLVB3IG5vdyB3b3JrcyBsaWtlIGdyZXAgLXcgaW4gdGhhdCB0aGUgbWF0 Y2hlZCBzdHJpbmcgaGFzIHRvIGJlCisgIHByZWNlZGVkIGFuZCBmb2xsb3dlZCBieSBub24td29y ZCBjb21wb25lbnRzIG9yIHRoZSBiZWdpbm5pbmcgYW5kIGVuZAorICBvZiB0aGUgbGluZSAoYXMg b3Bwb3NlZCB0byB3b3JkIGJvdW5kYXJpZXMgYmVmb3JlKS4gIEJlZm9yZSwgdGhpcworICBlY2hv IGFAQGF8IGdyZXAgLVB3IEBAIHdvdWxkIG1hdGNoLCB5ZXQgdGhpcworICBlY2hvIGFAQGF8IGdy ZXAgLXcgQEAgd291bGQgbm90LiAgTm93LCB0aGV5IGJvdGggZmFpbCB0byBtYXRjaCwKKyAgcGVy IHRoZSBkb2N1bWVudGF0aW9uIG9uIGhvdyBncmVwJ3MgLXcgd29ya3MuCisKCiAqIE5vdGV3b3J0 aHkgY2hhbmdlcyBpbiByZWxlYXNlIDIuMTggKDIwMTQtMDItMjApIFtzdGFibGVdCgpkaWZmIC0t Z2l0IGEvc3JjL3BjcmVzZWFyY2guYyBiL3NyYy9wY3Jlc2VhcmNoLmMKaW5kZXggZDRhMjBmZi4u MzE5MTU1ZiAxMDA2NDQKLS0tIGEvc3JjL3BjcmVzZWFyY2guYworKysgYi9zcmMvcGNyZXNlYXJj aC5jCkBAIC03Nyw3ICs3Nyw3IEBAIFBjb21waWxlIChjaGFyIGNvbnN0ICpwYXR0ZXJuLCBzaXpl X3Qgc2l6ZSkKICAgaWYgKG1hdGNoX2xpbmVzKQogICAgIHN0cmNweSAobiwgIl4oPzoiKTsKICAg aWYgKG1hdGNoX3dvcmRzKQotICAgIHN0cmNweSAobiwgIlxcYig/OiIpOworICAgIHN0cmNweSAo biwgIig/PCFcXHcpKD86Iik7CiAgIG4gKz0gc3RybGVuIChuKTsKCiAgIC8qIFRoZSBQQ1JFIGlu dGVyZmFjZSBkb2Vzbid0IGFsbG93IE5VTCBieXRlcyBpbiB0aGUgcGF0dGVybiwgc28KQEAgLTEw Myw3ICsxMDMsNyBAQCBQY29tcGlsZSAoY2hhciBjb25zdCAqcGF0dGVybiwgc2l6ZV90IHNpemUp CiAgIG4gKz0gcGF0bGltIC0gcDsKICAgKm4gPSAnXDAnOwogICBpZiAobWF0Y2hfd29yZHMpCi0g ICAgc3RyY3B5IChuLCAiKVxcYiIpOworICAgIHN0cmNweSAobiwgIikoPyFcXHcpIik7CiAgIGlm IChtYXRjaF9saW5lcykKICAgICBzdHJjcHkgKG4sICIpJCIpOwoKZGlmZiAtLWdpdCBhL3Rlc3Rz L01ha2VmaWxlLmFtIGIvdGVzdHMvTWFrZWZpbGUuYW0KaW5kZXggZWNiZTBlNi4uNzQyYTU4MCAx MDA2NDQKLS0tIGEvdGVzdHMvTWFrZWZpbGUuYW0KKysrIGIvdGVzdHMvTWFrZWZpbGUuYW0KQEAg LTgzLDYgKzgzLDcgQEAgVEVTVFMgPQkJCQkJCVwKICAgcGNyZS1hYm9ydAkJCQkJXAogICBwY3Jl LWludmFsaWQtdXRmOC1pbnB1dAkJCVwKICAgcGNyZS11dGY4CQkJCQlcCisgIHBjcmUtdwkJCQkJ XAogICBwY3JlLXd4LWJhY2tyZWYJCQkJXAogICBwY3JlLXoJCQkJCVwKICAgcHJlZml4LW9mLW11 bHRpYnl0ZQkJCQlcCmRpZmYgLS1naXQgYS90ZXN0cy9wY3JlLXcgYi90ZXN0cy9wY3JlLXcKbmV3 IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNTA0MGM1YQotLS0gL2Rldi9udWxsCisr KyBiL3Rlc3RzL3BjcmUtdwpAQCAtMCwwICsxLDMxIEBACisjISAvYmluL3NoCisjIEJlZm9yZSBn cmVwLTIuMTksIGdyZXAgLVB3ICUlIHdvdWxkIG1hdGNoICUlIGVuY2xvc2VkIGluIHdvcmQgYm91 bmRhcmllcworIworIyBDb3B5cmlnaHQgKEMpIDIwMTQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuCisjCisjIENvcHlpbmcgYW5kIGRpc3RyaWJ1dGlvbiBvZiB0aGlzIGZpbGUsIHdpdGgg b3Igd2l0aG91dCBtb2RpZmljYXRpb24sCisjIGFyZSBwZXJtaXR0ZWQgaW4gYW55IG1lZGl1bSB3 aXRob3V0IHJveWFsdHkgcHJvdmlkZWQgdGhlIGNvcHlyaWdodAorIyBub3RpY2UgYW5kIHRoaXMg bm90aWNlIGFyZSBwcmVzZXJ2ZWQuCisKKy4gIiR7c3JjZGlyPS59L2luaXQuc2giOyBwYXRoX3By ZXBlbmRfIC4uL3NyYworcmVxdWlyZV9wY3JlXworCitmYWlsPTAKKworZWNobyAlYWElID4gaW4g fHwgZnJhbWV3b3JrX2ZhaWx1cmVfCitncmVwIC1QdyBhYSBpbiA+IG91dCB8fCBmYWlsPTEKK2Nv bXBhcmUgb3V0IGluIHx8IGZhaWw9MQorCitlY2hvIGElJWEgPiBpbiB8fCBmcmFtZXdvcmtfZmFp bHVyZV8KK2dyZXAgLVB3ICUlIGluID4gb3V0ICYmIGZhaWw9MQorY29tcGFyZSAvZGV2L251bGwg b3V0IHx8IGZhaWw9MQorCitlY2hvICUlJSUgPiBpbiB8fCBmcmFtZXdvcmtfZmFpbHVyZV8KK2dy ZXAgLVB3ICUlIGluID4gb3V0IHx8IGZhaWw9MQorY29tcGFyZSBvdXQgaW4gfHwgZmFpbD0xCisK K2VjaG8gJSUgPiBpbiB8fCBmcmFtZXdvcmtfZmFpbHVyZV8KK2dyZXAgLVB3ICUlIGluID4gb3V0 IHx8IGZhaWw9MQorY29tcGFyZSBvdXQgaW4gfHwgZmFpbD0xCisKK0V4aXQgJGZhaWwKLS0gCjEu OS4wCgo= --047d7b6d7a10f3767d04f33ee894-- From debbugs-submit-bounces@debbugs.gnu.org Tue Feb 25 14:13:19 2014 Received: (at 16865-done) by debbugs.gnu.org; 25 Feb 2014 19:13:19 +0000 Received: from localhost ([127.0.0.1]:39830 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WINRP-0001x0-7O for submit@debbugs.gnu.org; Tue, 25 Feb 2014 14:13:19 -0500 Received: from mail-we0-f171.google.com ([74.125.82.171]:56643) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WINRN-0001wk-Pu for 16865-done@debbugs.gnu.org; Tue, 25 Feb 2014 14:13:18 -0500 Received: by mail-we0-f171.google.com with SMTP id u56so803312wes.30 for <16865-done@debbugs.gnu.org>; Tue, 25 Feb 2014 11:13:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=9gD/4EkwWjmlLJIVV8NJD2FA+5UX5daAcskniQs6eVk=; b=Av5qatITOk0mVrHvpOEuQI1gD6nBORglAmHao8JFsJbUkDJLl+6mDfl3M/Putuvm5M MtHysxPrlnApTsJ56sBLmJMfCYHbCz4bD+/fW8nm0k0Ukl54GMPF0pUmEiD7DAJQHmUg uDa1O7Fdb80+q1hIhCwT0H2GHLM0bL+GNg+K300Avh2su9eq6QuRlJsn7p0Tw5LUo3/H eRyv5tWipcDy6gqbEdhUong8aiphS5p+ahfFK1UrSrtnaNIHFYoJ3IdyG3i1xx6Hy7V/ OcN0VzXNQjLSevx8WXtjoFcej3CctzT6oQ/uUA9DMMoit7Q7yWxdrLBvzToD9EbB2ArS GDrA== X-Received: by 10.181.13.82 with SMTP id ew18mr4651221wid.22.1393355591782; Tue, 25 Feb 2014 11:13:11 -0800 (PST) Received: from chaz.gmail.com (188-223-3-27.zone14.bethere.co.uk. [188.223.3.27]) by mx.google.com with ESMTPSA id bm8sm53088295wjc.12.2014.02.25.11.13.06 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 25 Feb 2014 11:13:07 -0800 (PST) Date: Tue, 25 Feb 2014 19:13:06 +0000 From: Stephane Chazelas To: Jim Meyering Subject: Re: bug#16865: grep -wP and backreferences Message-ID: <20140225191306.GD18853@chaz.gmail.com> References: <20140224100154.GB14860@chaz.gmail.com> <20140224212001.GC14860@chaz.gmail.com> <20140225160822.GC18853@chaz.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 16865-done Cc: 16865-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.7 (/) 2014-02-25 10:03:28 -0800, Jim Meyering: [...] > I've uncapitalized the 1-line summary, changed a That to This > in the log, and added examples to NEWS, and added an empty > line to restore the 2-empty-line section delimiter. [...] > I've closed this ticket, and will push once you ack these changes. [...] Thanks. Changes fine by me. -- Stephane From unknown Sat Jun 21 12:11:08 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 26 Mar 2014 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator