From unknown Sun Jun 22 08:03:43 2025 X-Loop: help-debbugs@gnu.org Subject: bug#6984: rx generates wrong regular expression for class Resent-From: Daniel Colascione Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 04 Sep 2010 23:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 6984 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 6984@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.128364134621292 (code B ref -1); Sat, 04 Sep 2010 23:03:01 +0000 Received: (at submit) by debbugs.gnu.org; 4 Sep 2010 23:02:26 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1kg-0005XN-7P for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:02:26 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1ke-0005XI-Ew for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:02:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Os1mP-00050I-4u for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:04:14 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,T_DKIM_INVALID,T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:53519) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1mP-00050E-2b for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:04:13 -0400 Received: from [140.186.70.92] (port=51687 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Os1mO-0004zA-6X for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Os1mM-0004zy-VL for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:11 -0400 Received: from mail-pv0-f169.google.com ([74.125.83.169]:47946) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1mM-0004zp-Qz for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:10 -0400 Received: by pvc30 with SMTP id 30so1918490pvc.0 for ; Sat, 04 Sep 2010 16:04:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:x-enigmail-version:content-type :content-transfer-encoding; bh=dZNx9siRqAQF2Cmm4GBNREwF1BYMmVNhDCoDIwmw3oo=; b=dyUGsOs/h0qLdCSMYkYc2lqgn7KaNTlW+PpQbt2oUb1Oklc5bnfdyDrZe6jM9H3dqU 5obbrSyIb+4CGNLXIybJwa9yRUIfdLW28V5lNuIXD3eKHC8v6T1WqKP+1vO+2rdaMQzd ZiBVgh/uobOSt430GDMhw3rZkq6gq4jWFaD9k= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :x-enigmail-version:content-type:content-transfer-encoding; b=WKcjSOfSo4bS6lWdWq12SkpKtk3V2kQmAqvZlbIbtD3Ocwly/8bgCzjJJen3BGND8/ 58Xhk4pjZc+ul8L2jTeB3VpDiA5r8WuEa/mI2Htc0HkeHKWrjrrgv9C6XCjX0kmDDwQq 7pZX3q0KVmHBWXcU2Bigh0lLdOEkkyrwrfL/o= Received: by 10.114.27.6 with SMTP id a6mr1314559waa.173.1283641449371; Sat, 04 Sep 2010 16:04:09 -0700 (PDT) Received: from edith.hsd1.wa.comcast.net (c-67-183-23-114.hsd1.wa.comcast.net [67.183.23.114]) by mx.google.com with ESMTPS id o17sm7211983wal.9.2010.09.04.16.04.07 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 04 Sep 2010 16:04:08 -0700 (PDT) Message-ID: <4C82D066.4090603@gmail.com> Date: Sat, 04 Sep 2010 16:04:06 -0700 From: Daniel Colascione User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2 MIME-Version: 1.0 X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -4.8 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.0 (-----) (rx (in (?0 . ?3) ?, ?-)) generates "[,-0-3]" but it should generate "[,0-3-]" More generally, if "-" occurs in a class, it should always go *last*. From unknown Sun Jun 22 08:03:43 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.427 (Entity 5.427) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Daniel Colascione Subject: bug#6984: closed (Re: bug#6984: rx generates wrong regular expression for class) Message-ID: References: <4C82D066.4090603@gmail.com> X-Gnu-PR-Message: they-closed 6984 X-Gnu-PR-Package: emacs Reply-To: 6984@debbugs.gnu.org Date: Sun, 05 Sep 2010 13:35:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1283693703-12943-1" This is a multi-part message in MIME format... ------------=_1283693703-12943-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #6984: rx generates wrong regular expression for class which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 6984@debbugs.gnu.org. --=20 6984: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D6984 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1283693703-12943-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 6984-done) by debbugs.gnu.org; 5 Sep 2010 13:34:28 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OsFMZ-0003ME-22 for submit@debbugs.gnu.org; Sun, 05 Sep 2010 09:34:27 -0400 Received: from impaqm4.telefonica.net ([213.4.138.4]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OsBkX-00012c-0V for 6984-done@debbugs.gnu.org; Sun, 05 Sep 2010 05:42:58 -0400 Received: from IMPmailhost4.adm.correo ([10.20.102.125]) by IMPaqm4.telefonica.net with bizsmtp id 2xbr1f01E2iL0W23QxkkWq; Sun, 05 Sep 2010 11:44:44 +0200 Received: from ceviche.home ([83.61.51.178]) by IMPmailhost4.adm.correo with BIZ IMP id 2xki1f00A3qhCuj1kxkj8P; Sun, 05 Sep 2010 11:44:44 +0200 X-Brightmail-Tracker: AAAAAA== X-TE-authinfo: authemail="monnier$movistar.es" |auth_email="monnier@movistar.es" X-TE-AcuTerraCos: auth_cuTerraCos="cosuitnetc01" Received: by ceviche.home (Postfix, from userid 20848) id 0E77066115; Sun, 5 Sep 2010 11:44:42 +0200 (CEST) From: Stefan Monnier To: Daniel Colascione Subject: Re: bug#6984: rx generates wrong regular expression for class Message-ID: References: <4C82D066.4090603@gmail.com> Date: Sun, 05 Sep 2010 11:44:42 +0200 In-Reply-To: <4C82D066.4090603@gmail.com> (Daniel Colascione's message of "Sat, 04 Sep 2010 16:04:06 -0700") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 6984-done X-Mailman-Approved-At: Sun, 05 Sep 2010 09:34:25 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) >>>>> "Daniel" == Daniel Colascione writes: > (rx (in (?0 . ?3) ?, ?-)) > generates > "[,-0-3]" Thanks. I've just installed the patch below in the emacs-23 branch, which should fix it (in two different ways). Stefan === modified file 'lisp/emacs-lisp/rx.el' --- lisp/emacs-lisp/rx.el 2010-06-29 12:09:07 +0000 +++ lisp/emacs-lisp/rx.el 2010-09-05 09:37:06 +0000 @@ -427,7 +427,7 @@ (mapcar (lambda (e) (cond ((= (car e) (cdr e)) (list (car e))) - ;; ((= (1+ (car e)) (cdr e)) (list (car e) (cdr e))) + ((= (1+ (car e)) (cdr e)) (list (car e) (cdr e))) ((list e)))) l)) (delete-dups str)))) @@ -545,7 +545,10 @@ ((numberp e) (string e)) ((consp e) (if (and (= (1+ (car e)) (cdr e)) - (null (memq (car e) '(?\] ?-)))) + ;; rx-any-condense-range should + ;; prevent this case from happening. + (null (memq (car e) '(?\] ?-))) + (null (memq (cdr e) '(?\] ?-)))) (string (car e) (cdr e)) (string (car e) ?- (cdr e)))) (e))) ------------=_1283693703-12943-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 4 Sep 2010 23:02:26 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1kg-0005XN-7P for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:02:26 -0400 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1ke-0005XI-Ew for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:02:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Os1mP-00050I-4u for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:04:14 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,T_DKIM_INVALID,T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:53519) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1mP-00050E-2b for submit@debbugs.gnu.org; Sat, 04 Sep 2010 19:04:13 -0400 Received: from [140.186.70.92] (port=51687 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Os1mO-0004zA-6X for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Os1mM-0004zy-VL for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:11 -0400 Received: from mail-pv0-f169.google.com ([74.125.83.169]:47946) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Os1mM-0004zp-Qz for bug-gnu-emacs@gnu.org; Sat, 04 Sep 2010 19:04:10 -0400 Received: by pvc30 with SMTP id 30so1918490pvc.0 for ; Sat, 04 Sep 2010 16:04:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:x-enigmail-version:content-type :content-transfer-encoding; bh=dZNx9siRqAQF2Cmm4GBNREwF1BYMmVNhDCoDIwmw3oo=; b=dyUGsOs/h0qLdCSMYkYc2lqgn7KaNTlW+PpQbt2oUb1Oklc5bnfdyDrZe6jM9H3dqU 5obbrSyIb+4CGNLXIybJwa9yRUIfdLW28V5lNuIXD3eKHC8v6T1WqKP+1vO+2rdaMQzd ZiBVgh/uobOSt430GDMhw3rZkq6gq4jWFaD9k= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :x-enigmail-version:content-type:content-transfer-encoding; b=WKcjSOfSo4bS6lWdWq12SkpKtk3V2kQmAqvZlbIbtD3Ocwly/8bgCzjJJen3BGND8/ 58Xhk4pjZc+ul8L2jTeB3VpDiA5r8WuEa/mI2Htc0HkeHKWrjrrgv9C6XCjX0kmDDwQq 7pZX3q0KVmHBWXcU2Bigh0lLdOEkkyrwrfL/o= Received: by 10.114.27.6 with SMTP id a6mr1314559waa.173.1283641449371; Sat, 04 Sep 2010 16:04:09 -0700 (PDT) Received: from edith.hsd1.wa.comcast.net (c-67-183-23-114.hsd1.wa.comcast.net [67.183.23.114]) by mx.google.com with ESMTPS id o17sm7211983wal.9.2010.09.04.16.04.07 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 04 Sep 2010 16:04:08 -0700 (PDT) Message-ID: <4C82D066.4090603@gmail.com> Date: Sat, 04 Sep 2010 16:04:06 -0700 From: Daniel Colascione User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2 MIME-Version: 1.0 To: bug-gnu-emacs@gnu.org Subject: rx generates wrong regular expression for class X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -4.8 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.0 (-----) (rx (in (?0 . ?3) ?, ?-)) generates "[,-0-3]" but it should generate "[,0-3-]" More generally, if "-" occurs in a class, it should always go *last*. ------------=_1283693703-12943-1--