From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.bugs Subject: bug#6984: rx generates wrong regular expression for class Date: Sun, 05 Sep 2010 11:44:42 +0200 Message-ID: References: <4C82D066.4090603@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1283694025 32295 80.91.229.12 (5 Sep 2010 13:40:25 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 5 Sep 2010 13:40:25 +0000 (UTC) To: Daniel Colascione Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Sep 05 15:40:24 2010 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OsFSJ-0003J0-HM for geb-bug-gnu-emacs@m.gmane.org; Sun, 05 Sep 2010 15:40:23 +0200 Original-Received: from localhost ([127.0.0.1]:34001 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OsFSJ-0006Ik-1g for geb-bug-gnu-emacs@m.gmane.org; Sun, 05 Sep 2010 09:40:23 -0400 Original-Received: from [140.186.70.92] (port=56940 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OsFSB-0006Ht-4O for bug-gnu-emacs@gnu.org; Sun, 05 Sep 2010 09:40:16 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OsFS9-0005Gk-H1 for bug-gnu-emacs@gnu.org; Sun, 05 Sep 2010 09:40:15 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:43870) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OsFS9-0005Gf-Dm for bug-gnu-emacs@gnu.org; Sun, 05 Sep 2010 09:40:13 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1OsFN9-0003Mo-D5 for bug-gnu-emacs@gnu.org; Sun, 05 Sep 2010 09:35:03 -0400 Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: bug-gnu-emacs@gnu.org Resent-Date: Sun, 05 Sep 2010 13:35:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: cc-closed 6984 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Mail-Followup-To: 6984@debbugs.gnu.org, monnier@iro.umontreal.ca Original-Received: via spool by 6984-done@debbugs.gnu.org id=D6984.128369366812917 (code D ref 6984); Sun, 05 Sep 2010 13:35:03 +0000 Original-Received: (at 6984-done) by debbugs.gnu.org; 5 Sep 2010 13:34:28 +0000 Original-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 Original-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 Original-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 Original-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" Original-Received: by ceviche.home (Postfix, from userid 20848) id 0E77066115; Sun, 5 Sep 2010 11:44:42 +0200 (CEST) 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) 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 Resent-Date: Sun, 05 Sep 2010 09:35:03 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:39993 Archived-At: >>>>> "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)))