Regex problem
James Blewitt
jim at jblewitt.com
Wed Mar 28 02:25:40 PDT 2012
I am having a problem with regexes.
The following code causes a compilation error, whereas if I
comment out the regex outside of main and comment in the regex
inside main, it does compile.
I'm using DMD v2.058.
<code>
import std.regex;
Regex!(char) testRegex = regex("\\b(A(Z)?|B(Z)?|C(Z)?)\\b", "i");
void main() {
// Regex!(char) testRegex = regex("\\b(A(Z)?|B(Z)?|C(Z)?)\\b",
"i");
}
</code>
The error is:
<code>
/usr/include/d/dmd/phobos/std/regex.d(2668): Error:
assert(re.ir[t.pc].code() == cast(IR)130u) failed
/usr/include/d/dmd/phobos/std/regex.d(2091): called from
here: (Kickstart!(char) __ctmp1256 = 0;
, __ctmp1256).this(this,new uint[](256u))
/usr/include/d/dmd/phobos/std/regex.d(2146): called from
here: this.lightPostprocess()
/usr/include/d/dmd/phobos/std/regex.d(1958): called from
here: (Regex!(char) __ctmp1221 = 0;
, __ctmp1221).this(this)
/usr/include/d/dmd/phobos/std/regex.d(6402): called from
here: parser.program()
regex_test.d(3): called from here:
regex("\\b(A(Z)?|B(Z)?|C(Z)?)\\b","i")
</code>
More information about the Digitalmars-d-bugs
mailing list