[dmd-beta] Time for a new beta?

Rainer Schuetze r.sagitario at gmx.de
Sun Aug 21 00:20:19 PDT 2011


On 20.08.2011 11:40, Dmitry Olshansky wrote:
> On 20.08.2011 12:39, Rainer Schuetze wrote:
>> Hi,
>>
>> I recently updated to the latest revision from github and tried to 
>> compile my main project visuald with it. Here are some complications 
>> that have hit me:
>>
>> [...]
>> 2. std.regexp is deprecated now, which is good, because there is no 
>> reason to have two different implementations of regular expressions. 
>> Unfortunately, std.regex seems to have some problems with rather 
>> simple regular expressions like r"^(.*)\(([0-9]+)\):(.*)$" that is 
>> supposed to match error messages like "file.d(37): huhu". std.regexp 
>> worked for this expression.
>>
> That's most likely my fault, since there is a special casing for .* in 
> std.regex which very well might be at fault here. Honestly, at a 
> certain point I just gave up on trying to fix current std.regex, 
> apparently a bit early. A quick test on this  would be 
> r"^([\x00-\x80]*)\(([0-9]+)\):([\x00-\x80]*)$".
>

Thanks for confirming. Your workaround works for this regular 
expression. But I also have a user input field that can be a regular 
expression, where ".*" would be nice to work out of the box. I could 
replace it with the range as a workaround, though.

>
>> Dmitry Olshansky's new std.regex also works, but it does not compile 
>> with warnings enabled (even not with -wi) ( 
>> http://d.puremagic.com/issues/show_bug.cgi?id=6518 ).
>>
> Btw I thought -wi is supposed to just list it as  warning.

I thought so, too. But the check is only done when warnings are enabled, 
but an error is issued instead of a warning (statement.c, line 676).



More information about the dmd-beta mailing list