[Mono-bugs] [Bug 52605][Wis] Changed - Compiling regexes to IL
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Sat, 15 May 2004 14:12:56 -0400 (EDT)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by beauche@softhome.net.
http://bugzilla.ximian.com/show_bug.cgi?id=52605
--- shadow/52605 2004-05-14 18:05:11.000000000 -0400
+++ shadow/52605.tmp.20309 2004-05-15 14:12:56.000000000 -0400
@@ -22,6 +22,47 @@
------- Additional Comments From beauche@softhome.net 2004-02-02 09:57 -------
See http://aeglos.dyndns.org/tip-mono/
------- Additional Comments From jackson@ximian.com 2004-05-14 18:05 -------
Could you post an update of your status, so we know whether or not
this bug can be closed?
+
+------- Additional Comments From beauche@softhome.net 2004-05-15 14:12 -------
+We had posted it on the mailing list.Here is the mail :
+
+Since we are a little bit short of time, we want to publish a first
+release of the CILCompiler. It's not perfect, it's not feature
+complete, but no mutch less than the interpreter.
+
+We are actually blocked with some case of imbricated regex and it
+won't be possible to finish before the deadline.
+
+Some things who where recursive in the interpreter are very difficult
+to render in an iterative fashion.
+
+So, the compiler actually do Well :
+- Litteral matching
+- Capturing group
+- Character class
+- Back references
+- Any anchor (Zero width assetion)
+- Alternation with simple nested regex ( no repetition )
+- Repetition of simple regex
+
+Here is the list of known bug :
+- some case of alternation nested with repetitions
+- RightToLeft in compiled mode still have some mismatch
+- All commented test cases in CILRegexTrials.cs...
+
+What's not implemented :
+- Balancing groups
+- Lookahead / Lookbehind
+- Nonbactracking group
+- Conditionnal alternation
+
+So, if anyone want to give it a try, here are the patches.
+Note that System.dll must be compiled with --unsafe in orther to
+compile the Compiler.
+
+Before applying any patch, it is necessary to do a "dos2unix -U *" in
+System.Text.RegularExpressions and Test/System.Text.RegularExpressions.
+All patch are made from mcs/class/System