Is this a std.regex bug?
Dmitry Olshansky
dmitry.olsh at gmail.com
Wed Aug 8 09:50:18 PDT 2012
On 08-Aug-12 11:28, Andrea Fontana wrote:
>
> import std.regex;
> void main() {
> auto r = ctRegex!(r"/a/b/(c|d|e|f)", "g");
> }
>
> This simple app fails at compile time.
( it's not that simple ;) )
But it's "been there, seen that". In short:
> assert(this.ir[cast(ulong)orStart].code() == cast(IR)129u) failed
> assert(this.ir[cast(ulong)orStart].code() == cast(IR)129u) failed
A well known problem search Bugzilla with cast(IR)129u and you'd find
it. Or just ctRegex.
And that's something I need to ping Don about. CTFE is still not 1:1
with normal D.
>
> Il giorno mar, 07/08/2012 alle 19.53 +0400, Dmitry Olshansky ha scritto:
>> On 07-Aug-12 16:06, Andrea Fontana wrote:
>> > dmd 2.060 64bit ubuntu:
>> >
>> > // Doesn't work:
>> > auto r = ctRegex!(r"/api/places/(id|related|search|count)\.(json|xml)",
>> > "g");
>> >
>>
>> Could be. It is experimental and is known to have bugs.
>> What is the exact problem statement?
>>
>> > // Works:
>> > auto r = regex(r"/api/places/(id|related|search|count)\.(json|xml)", "g");
>> >
>> >
>>
>>
>
--
Dmitry Olshansky
More information about the Digitalmars-d-learn
mailing list