<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br></div>Yes, that seems to fix things. Thanks for the prompt fix!<div><br></div><div>I've committed the changes to my cl-pppcre github repo:</div><div><br></div><div><a href="https://github.com/slyrus/cl-ppcre/tree/property-bugfix">https://github.com/slyrus/cl-ppcre/tree/property-bugfix</a></div><div><br></div><div>thanks again for the prompt attention to this,</div><div><br></div><div>Cyrus</div><div><br></div><div>On Apr 8, 2012, at 4:42 AM, Edi Weitz wrote:</div><div><div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Yep, that seems to be a bug.  I looked into it for a couple of minutes<br>and I /think/ the patch below fixes it, but it's been a long time<br>since I've looked into the ugly parts of CL-PPCRE, so take this with a<br>grain of salt.<br><br>Cheers,<br>Edi.<br><br><br>--- convert.lisp        (revision 4677)<br>+++ convert.lisp        (working copy)<br>@@ -701,11 +701,15 @@<br> (defmethod convert-compound-parse-tree ((token (eql :property))<br>parse-tree &key)<br>   "The case for \(:PROPERTY <name>) where <name> is a string."<br>   (declare #.*standard-optimize-settings*)<br>+  (declare (special accumulate-start-p))<br>+  (setq accumulate-start-p nil)<br>   (make-instance 'char-class :test-function (resolve-property (second<br>parse-tree))))<br><br> (defmethod convert-compound-parse-tree ((token (eql<br>:inverted-property)) parse-tree &key)<br>   "The case for \(:INVERTED-PROPERTY <name>) where <name> is a string."<br>   (declare #.*standard-optimize-settings*)<br>+  (declare (special accumulate-start-p))<br>+  (setq accumulate-start-p nil)<br>   (make-instance 'char-class :test-function (complement*<br>(resolve-property (second parse-tree)))))<br><br> (defmethod convert-compound-parse-tree ((token (eql :flags)) parse-tree &key)<br><br>On Sun, Apr 8, 2012 at 4:04 AM, Cyrus Harmon <<a href="mailto:ch-lisp@bobobeach.com">ch-lisp@bobobeach.com</a>> wrote:<br><blockquote type="cite"><br></blockquote><blockquote type="cite">I was noticing some strange behavior with cxml-rng and David Lichteblau pointed out that the problem might be due to cl-ppcre and provided this example:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">(let ((regex1 '(:SEQUENCE :start-anchor<br></blockquote><blockquote type="cite">               (:greedy-repetition 0 42 (:property digit-char-p))<br></blockquote><blockquote type="cite">               #\-))<br></blockquote><blockquote type="cite">     (regex2 '(:SEQUENCE :start-anchor<br></blockquote><blockquote type="cite">               (:property digit-char-p)<br></blockquote><blockquote type="cite">               #\-))<br></blockquote><blockquote type="cite">     (str "8-"))<br></blockquote><blockquote type="cite"> (values (multiple-value-list (ppcre:scan regex1 str))<br></blockquote><blockquote type="cite">         (multiple-value-list (ppcre:scan regex2 str))))<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Regex1 works as expected (it matches 8-) but the second one doesn't. It's possible I don't understand (well more than possible) how :property works, but I would have expected either both or neither of these to fail. Could this be due to a bug in cl-ppcre?<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">thanks,<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Cyrus<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">_______________________________________________<br></blockquote><blockquote type="cite">cl-ppcre-devel site list<br></blockquote><blockquote type="cite"><a href="mailto:cl-ppcre-devel@common-lisp.net">cl-ppcre-devel@common-lisp.net</a><br></blockquote><blockquote type="cite"><a href="http://common-lisp.net/mailman/listinfo/cl-ppcre-devel">http://common-lisp.net/mailman/listinfo/cl-ppcre-devel</a><br></blockquote><blockquote type="cite"><br></blockquote><br>_______________________________________________<br>cl-ppcre-devel site list<br><a href="mailto:cl-ppcre-devel@common-lisp.net">cl-ppcre-devel@common-lisp.net</a><br>http://common-lisp.net/mailman/listinfo/cl-ppcre-devel<br></div></blockquote></div><br></div></body></html>