Thread overview
[phobos] Is the build broken?
Nov 13, 2011
Jonathan M Davis
Nov 13, 2011
Dmitry Olshansky
Nov 13, 2011
Don Clugston
November 12, 2011
I just updated everything (dmd, druntime, phobos) and make unittest fails for phobos on OSX/32 with the error below. Is it reproducible?

core.exception.AssertError at std/regex.d(7138): bmatch(R,RegEx) if (is(RegEx == Regex!(BasicElementOf!(R)))): mismatch pattern #204: \b\w+\b expected: abde4 vs de
----------------
5   regex                               0x001086b6 _d_assert_msg + 26
6   regex                               0x0008a25d void
std.regex.__unittest7().void
__T9run_testsS173std5regex6bmatchZ.run_tests() + 82613
7   regex                               0x00005fd5 void
std.regex.__unittest7() + 13
8   regex                               0x00001fb1 void
std.regex.__modtest() + 21
9   regex                               0x000ff8b1 extern (C) bool
core.runtime.runModuleUnitTests().int __foreachbody265(ref
object.ModuleInfo*) + 45
10  regex                               0x000fa617 int
object.ModuleInfo.opApply(scope int delegate(ref object.ModuleInfo*)) + 79
11  regex                               0x000ff7a2 runModuleUnitTests + 134
12  regex                               0x00108e2f extern (C) int
rt.dmain2.main(int, char**).void runAll() + 43
13  regex                               0x001089a1 extern (C) int
rt.dmain2.main(int, char**).void tryExec(scope void delegate()) + 29
14  regex                               0x0010893b main + 179
15  regex                               0x00001f89 start + 53
16  ???                                 0x00000001 0x0 + 1


Thanks,

Andrei
November 12, 2011
On Saturday, November 12, 2011 19:21:41 Andrei Alexandrescu wrote:
> I just updated everything (dmd, druntime, phobos) and make unittest fails for phobos on OSX/32 with the error below. Is it reproducible?
> 
> core.exception.AssertError at std/regex.d(7138): bmatch(R,RegEx) if
> (is(RegEx == Regex!(BasicElementOf!(R)))): mismatch pattern #204:
> \b\w+\b expected: abde4 vs de
> ----------------
> 5   regex                               0x001086b6 _d_assert_msg + 26
> 6   regex                               0x0008a25d void
> std.regex.__unittest7().void
> __T9run_testsS173std5regex6bmatchZ.run_tests() + 82613
> 7   regex                               0x00005fd5 void
> std.regex.__unittest7() + 13
> 8   regex                               0x00001fb1 void
> std.regex.__modtest() + 21
> 9   regex                               0x000ff8b1 extern (C) bool
> core.runtime.runModuleUnitTests().int __foreachbody265(ref
> object.ModuleInfo*) + 45
> 10  regex                               0x000fa617 int
> object.ModuleInfo.opApply(scope int delegate(ref object.ModuleInfo*)) + 79
> 11  regex                               0x000ff7a2 runModuleUnitTests + 134
> 12  regex                               0x00108e2f extern (C) int
> rt.dmain2.main(int, char**).void runAll() + 43
> 13  regex                               0x001089a1 extern (C) int
> rt.dmain2.main(int, char**).void tryExec(scope void delegate()) + 29
> 14  regex                               0x0010893b main + 179
> 15  regex                               0x00001f89 start + 53
> 16  ???                                 0x00000001 0x0 + 1

The OSX build has been broken ever since the new std.regex was merged in: http://d.puremagic.com/test-results/

You can read the discussion about it on the pull request: https://github.com/D-Programming-Language/phobos/pull/310  It sounds like it's a compiler bug, but I don't think that they've quite figured it out yet.

- Jonathan M Davis
November 13, 2011
On 13.11.2011 9:35, Jonathan M Davis wrote:
> On Saturday, November 12, 2011 19:21:41 Andrei Alexandrescu wrote:
>> I just updated everything (dmd, druntime, phobos) and make unittest fails for phobos on OSX/32 with the error below. Is it reproducible?
>>
>> core.exception.AssertError at std/regex.d(7138): bmatch(R,RegEx) if
>> (is(RegEx == Regex!(BasicElementOf!(R)))): mismatch pattern #204:
>> \b\w+\b expected: abde4 vs de
>> ----------------
>> 5   regex                               0x001086b6 _d_assert_msg + 26
>> 6   regex                               0x0008a25d void
>> std.regex.__unittest7().void
>> __T9run_testsS173std5regex6bmatchZ.run_tests() + 82613
>> 7   regex                               0x00005fd5 void
>> std.regex.__unittest7() + 13
>> 8   regex                               0x00001fb1 void
>> std.regex.__modtest() + 21
>> 9   regex                               0x000ff8b1 extern (C) bool
>> core.runtime.runModuleUnitTests().int __foreachbody265(ref
>> object.ModuleInfo*) + 45
>> 10  regex                               0x000fa617 int
>> object.ModuleInfo.opApply(scope int delegate(ref object.ModuleInfo*)) + 79
>> 11  regex                               0x000ff7a2 runModuleUnitTests + 134
>> 12  regex                               0x00108e2f extern (C) int
>> rt.dmain2.main(int, char**).void runAll() + 43
>> 13  regex                               0x001089a1 extern (C) int
>> rt.dmain2.main(int, char**).void tryExec(scope void delegate()) + 29
>> 14  regex                               0x0010893b main + 179
>> 15  regex                               0x00001f89 start + 53
>> 16  ???                                 0x00000001 0x0 + 1
> The OSX build has been broken ever since the new std.regex was merged in: http://d.puremagic.com/test-results/
>
> You can read the discussion about it on the pull request: https://github.com/D-Programming-Language/phobos/pull/310  It sounds like it's a compiler bug, but I don't think that they've quite figured it out yet.
>
>
Sorry about that, but so far I failed to get a grip on what's actually
wrong. For what it's worth I expected it to be completely platform
agnostic. There is nothing special except malloc|free|memchr here.
If anyone on Mac OS X can be bothered to try it with earlier versions of
compiler, then  please do.

-- 
Dmitry Olshansky

November 13, 2011
On 13 November 2011 02:21, Andrei Alexandrescu <andrei at erdani.com> wrote:
> I just updated everything (dmd, druntime, phobos) and make unittest fails for phobos on OSX/32 with the error below. Is it reproducible?
>
> core.exception.AssertError at std/regex.d(7138): bmatch(R,RegEx) if (is(RegEx
> == Regex!(BasicElementOf!(R)))): mismatch pattern #204: \b\w+\b expected:

Note that Phobos unit tests have also been broken on Windows for ages;
std\traits.d(377): Error: static assert  (0u ==
cast(FunctionAttribute)3u) is false

Phobos hasn't passed on Windows for TWO WEEKS!!! This is really quite awful.
Please everyone, if you do checkin that breaks the build, and you
don't have time to fix it quickly, please revert it.