I stumbled over this: --- import std.regex; void main() { std.regex.match("a"d, "aa"d); } --- => core.exception.AssertError@/home/nils/d/dmd2/linux/bin32/../../src/phobos/std/utf.d(800): Attempted to decode past the end of a string I traced it down to ShiftOr.search returning a value greater than the input length: --- dstring input = "a", pattern = "aa"; assert(regex(pattern).kickstart.search(input, 0) <= input.length); // fails ---
Commit pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/84a847cbe18f6b42597436ce01a0d1b1ce932ff7 Merge pull request #462 from blackwhale/regex-fixes fix Issue 7300 - std.regex.ShiftOr!dchar.search is broken