bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#1108: marked as done (23.0.60; conversion bugs of rx.el)


From: Emacs bug Tracking System
Subject: bug#1108: marked as done (23.0.60; conversion bugs of rx.el)
Date: Tue, 7 Oct 2008 11:15:05 -0700

Your message dated Tue, 07 Oct 2008 14:11:15 -0400
with message-id <87wsgk9sxo.fsf@cyd.mit.edu>
and subject line Re: 23.0.60; conversion bugs of rx.el
has caused the Emacs bug report #1108,
regarding 23.0.60; conversion bugs of rx.el
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact don@donarmstrong.com
immediately.)


-- 
1108: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=1108
Emacs Bug Tracking System
Contact don@donarmstrong.com with problems
--- Begin Message --- Subject: 23.0.60; conversion bugs of rx.el Date: Tue, 7 Oct 2008 23:02:28 +0900
Hello,

rx.el of the latest Emacs (23.0.60) has several problems.
I fixed them and attach a tar file including the following.

   rx.diff     - diff file
   rx-new.el   - new replacement of rx.el (as many changes)
   rx-test.el  - for simple output of original and fixed
   RX.txt      - test output of mine (not by the above)
   Changelog

Fixed problems are as follows:


* (NOT CHAR-CLASS-SYMBOL) cause an error.

   (rx (not word))      => (error "rx `not' syntax error: word")
   (rx (not digit))     => (error "rx `not' syntax error: digit")


* "^" in ANY produce a unnecessary escape or incorrect result.

   (rx (any "^"))       => "[\\^]"
   (rx (not (any "^"))) => "[^\\^]"
   (rx (any ?^ ?a))     => "[\\^a]"
   (rx (any ?a ?^))     => "[a\\^]"


* "]", "-" in ANY produce incorrect result.

   (rx (any ?- ?a ?\]))                 => "[]-a]"
   (rx (any "--]"))        => "[]--]"


* NOT-NOT-ANY produce incorrect result for special characters.

   (rx (not (not (any ".")))) => "."


* NOT-WORDCHAR is incorrectly treated as character class.
  NOT-WORDCHAR should not be defined as a character class.

   (rx (any ascii not-wordchar)) => "[[:ascii:]^[:word:]]"


* ANY accept syntax symbols and produce an senseless result.

   (rx (any symbol-start symbol-end))  => "[__]"
   (rx (any word-boundary))            => "[]"


* NOT-NOT to symbol produce an incorrect result.

   (rx (not (not word-boundary)))      => "[^\\B]"
   (rx (not (not (syntax word))))      => "[^\\Sw]"


* Rx produce unnecessary shy groups easily.

   (rx (or (and "a" "b") (and "b" "c"))) =>
                                    "\\(?:\\(?:ab\\)\\|\\(?:bc\\)\\)"


* ANYTHING always produce shy groups even when unnecessary.

   (rx anything)              => "\\(?:.\\|\n\\)"
   (rx (or anything "abc"))   => "\\(?:\\(?:.\\|\n\\)\\|abc\\)"


* NO-GROUP in `rx-to-string' doesn't work as documented, or is
  ambiguously defined.

   (rx-to-string "ab" t)               => "ab"
   (rx-to-string "ab" nil)             => "ab"
   (rx-to-string '(and "a" "b") t)     => "\\(?:ab\\)"
   (rx-to-string '(and "a" "b") nil)   => "\\(?:ab\\)"


Regards,
Shigeru

Attachment: rx.tgz
Description: GNU Zip compressed data


--- End Message ---
--- Begin Message --- Subject: Re: 23.0.60; conversion bugs of rx.el Date: Tue, 07 Oct 2008 14:11:15 -0400
> rx.el of the latest Emacs (23.0.60) has several problems.  I fixed
> them and attach a tar file including the following.

Thanks for fixing the bugs.  Your changes look good; I've checked them
into CVS.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]