Re: Forking phobos

2011-04-05 Thread Steven Schveighoffer
On Mon, 04 Apr 2011 18:25:55 -0400, Jens Mueller jens.k.muel...@gmx.de  
wrote:



Steven Schveighoffer wrote:

On Sun, 03 Apr 2011 18:31:12 -0400, Jens Mueller
jens.k.muel...@gmx.de wrote:

Thank you. I'm doing it right now. It works.

Sean Kelly wrote:
You'll need to build DMD from source. A change was checked in
the other day that requires it.


Please note, the last time I checked, dmd is built in debug mode by
default.  Not sure if this has changed, but if you are getting weird
extraneous message, that's probably why.

I think you have to do make release, or something like that.


Looking at the output of
$ make -f linux.mak
and inside linux.mak it seems that is not a debug build.
But thanks anyway.


Hm... it may be only windows that builds debug by default.  Though I can't  
see a good reason for the difference.


-Steve


Re: Forking phobos

2011-04-04 Thread Steven Schveighoffer
On Sun, 03 Apr 2011 18:31:12 -0400, Jens Mueller jens.k.muel...@gmx.de  
wrote:



Thank you. I'm doing it right now. It works.

Sean Kelly wrote:
You'll need to build DMD from source. A change was checked in the other  
day that requires it.




Please note, the last time I checked, dmd is built in debug mode by  
default.  Not sure if this has changed, but if you are getting weird  
extraneous message, that's probably why.


I think you have to do make release, or something like that.

-Steve


Re: Forking phobos

2011-04-04 Thread Jens Mueller
Steven Schveighoffer wrote:
 On Sun, 03 Apr 2011 18:31:12 -0400, Jens Mueller
 jens.k.muel...@gmx.de wrote:
 
 Thank you. I'm doing it right now. It works.
 
 Sean Kelly wrote:
 You'll need to build DMD from source. A change was checked in
 the other day that requires it.
 
 
 Please note, the last time I checked, dmd is built in debug mode by
 default.  Not sure if this has changed, but if you are getting weird
 extraneous message, that's probably why.
 
 I think you have to do make release, or something like that.

Looking at the output of
$ make -f linux.mak
and inside linux.mak it seems that is not a debug build.
But thanks anyway.

I needed to build 64 bit because my Linux ships no 32-bit libcurl and I
don't want to build that as well. I had to add a symbolic link from
libcurl.so.4 to libcurl.so. Don't know why it wasn't there. It should
have, shouldn't it.

BTW I see --- std.regex(3443) broken test ---
The code is
unittest
{
// DAC: This doesn't create the file before running the test!
pragma(msg,  --- std.regex(~ __LINE__.stringof ~) broken test --- );
/+  
string tmp = /tmp/deleteme;
std.file.write(tmp, 1 abc\n2 defg\n3 hijklm);
auto t = loadFile!(uint, string)(tmp, regex(([0-9])+ +(.+)));
//writeln(t);
assert(t[0] == tuple(1, abc));
assert(t[1] == tuple(2, defg));
assert(t[2] == tuple(3, hijklm));
+/
}

I do not understand that comment. I ran this test by commenting in the
code and it worked.

Jens


Re: Forking phobos

2011-04-04 Thread Jens Mueller
Jens Mueller wrote:
 Steven Schveighoffer wrote:
  On Sun, 03 Apr 2011 18:31:12 -0400, Jens Mueller
  jens.k.muel...@gmx.de wrote:
  
  Thank you. I'm doing it right now. It works.
  
  Sean Kelly wrote:
  You'll need to build DMD from source. A change was checked in
  the other day that requires it.
  
  
  Please note, the last time I checked, dmd is built in debug mode by
  default.  Not sure if this has changed, but if you are getting weird
  extraneous message, that's probably why.
  
  I think you have to do make release, or something like that.
 
 Looking at the output of
 $ make -f linux.mak
 and inside linux.mak it seems that is not a debug build.
 But thanks anyway.
 
 I needed to build 64 bit because my Linux ships no 32-bit libcurl and I
 don't want to build that as well. I had to add a symbolic link from
 libcurl.so.4 to libcurl.so. Don't know why it wasn't there. It should
 have, shouldn't it.
 
 BTW I see --- std.regex(3443) broken test ---
 The code is
 unittest
 {
 // DAC: This doesn't create the file before running the test!
 pragma(msg,  --- std.regex(~ __LINE__.stringof ~) broken test --- );
 /+  
 string tmp = /tmp/deleteme;
 std.file.write(tmp, 1 abc\n2 defg\n3 hijklm);
 auto t = loadFile!(uint, string)(tmp, regex(([0-9])+ +(.+)));
 //writeln(t);
 assert(t[0] == tuple(1, abc));
 assert(t[1] == tuple(2, defg));
 assert(t[2] == tuple(3, hijklm));
 +/
 }
 
 I do not understand that comment. I ran this test by commenting in the
 code and it worked.

Maybe even better using a temporary file like this
auto file = File.tmpfile();
file.write(1 abc\n2 defg\n3 hijklm);
file.rewind();
auto t = loadFile!(uint, string)(file, regex(([0-9])+ +(.+)));
//writeln(t);
assert(t[0] == tuple(1, abc));
assert(t[1] == tuple(2, defg));
assert(t[2] == tuple(3, hijklm));

Because I have seen the auto-tester failing because of forgotten files.
A good test shouldn't leave any trace if it was successful. Every change
may cause another test to behave differently. Tests should be isolated
as much as possible. Thus, not influencing each other. There may be
cases where one wants to influence another test but these are very rare
I guess.

Jens


Forking phobos

2011-04-03 Thread Aleksandar Ružičić
I want to fork Phobos and hack a bit on it (maybe even submit some
pull requests, someday), but I'm having trouble compiling it (on
windows).
This is what I've done:

 - forked phobos on github
 - cloned the fork to my machine
 - run make -f win32.mak

and make complained that it can't make druntime lib. So I've cloned
druntime in same directory where i have phobos (so I now have phobos
and druntime directories on same level),
Did make -f win32.mak clean and tried make again, but it still
complains about druntime:

cd ..\..\..
Error: don't know how to make '..\druntime\lib\druntime.lib'

What I'm I doing wrong? Am I missing some more components?
I just want to be able to edit phobos source, compile it to phobos.lib
and link it to my d program.

I have DMC, DMD and LINK on PATH, that's not the issue...


Thanks,
Aleksandar


Re: Forking phobos

2011-04-03 Thread Jonathan M Davis
On 2011-04-03 12:48, Aleksandar Ružičić wrote:
 I want to fork Phobos and hack a bit on it (maybe even submit some
 pull requests, someday), but I'm having trouble compiling it (on
 windows).
 This is what I've done:
 
  - forked phobos on github
  - cloned the fork to my machine
  - run make -f win32.mak
 
 and make complained that it can't make druntime lib. So I've cloned
 druntime in same directory where i have phobos (so I now have phobos
 and druntime directories on same level),
 Did make -f win32.mak clean and tried make again, but it still
 complains about druntime:
 
 cd ..\..\..
 Error: don't know how to make '..\druntime\lib\druntime.lib'
 
 What I'm I doing wrong? Am I missing some more components?
 I just want to be able to edit phobos source, compile it to phobos.lib
 and link it to my d program.
 
 I have DMC, DMD and LINK on PATH, that's not the issue...

I believe that these are the correct steps:

1. Make sure that druntime and phobos were both put at the same directory 
level. e.g. I have C:/github/druntime and C:/github/phobos.

2. Adjust your sc.ini accordingly. e.g. Mine is

=
[Version]
version=7.51 Build 020

[Environment]
LIB=c:\github\druntime\lib;c:\github\phobos\;c:\dmd2\windows\lib;c:
\dm\lib
DFLAGS=-Ic:\github\phobos\;c:\github\druntime\import
LINKCMD=%@P%\link.exe
=

3. Build druntime by running make -f win32.mak in the druntime directory.

4. Build Phobos by running make -f win32.mak in the phobos directory.

- Jonathan M Davis


Re: Forking phobos

2011-04-03 Thread Aleksandar Ružičić
Thanks! I've changed sc.ini, built druntime and then phobos successfully.

Now, I'm able to build phobos.lib but when I try to compile simple
hello world program and link it to that phobos.lib OPTLINK greets me
with this:

C:\dmd hello.d
OPTLINK (R) for Win32  Release 8.00.8
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(lifetime)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
--- errorlevel 4

this is my sc.ini:

[Version]
version=7.51 Build 020

[Environment]
LIB=C:\Users\Aleksandar\Dropbox\Projects\druntime\lib;C:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\bin\dmd2\windows\lib;C:\bin\dm\lib
DFLAGS=-IC:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\Users\Aleksandar\Dropbox\Projects\druntime\import
LINKCMD=%@P%\link.exe

Also, when i do make -f win32.mak unittest I get the same error:

 --- std.socket(316) broken test ---
 --- std.regex(3443) broken test ---
OPTLINK (R) for Win32  Release 8.00.8
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
unittest.obj(unittest)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
--- errorlevel 4

(plus 2 broken tests)

Do I need latest DMD from github?



On Sun, Apr 3, 2011 at 11:30 PM, Jonathan M Davis jmdavisp...@gmx.com wrote:
 On 2011-04-03 12:48, Aleksandar Ružičić wrote:
 I want to fork Phobos and hack a bit on it (maybe even submit some
 pull requests, someday), but I'm having trouble compiling it (on
 windows).
 This is what I've done:

  - forked phobos on github
  - cloned the fork to my machine
  - run make -f win32.mak

 and make complained that it can't make druntime lib. So I've cloned
 druntime in same directory where i have phobos (so I now have phobos
 and druntime directories on same level),
 Did make -f win32.mak clean and tried make again, but it still
 complains about druntime:

 cd ..\..\..
 Error: don't know how to make '..\druntime\lib\druntime.lib'

 What I'm I doing wrong? Am I missing some more components?
 I just want to be able to edit phobos source, compile it to phobos.lib
 and link it to my d program.

 I have DMC, DMD and LINK on PATH, that's not the issue...

 I believe that these are the correct steps:

 1. Make sure that druntime and phobos were both put at the same directory
 level. e.g. I have C:/github/druntime and C:/github/phobos.

 2. Adjust your sc.ini accordingly. e.g. Mine is

 =
 [Version]
 version=7.51 Build 020

 [Environment]
 LIB=c:\github\druntime\lib;c:\github\phobos\;c:\dmd2\windows\lib;c:
 \dm\lib
 DFLAGS=-Ic:\github\phobos\;c:\github\druntime\import
 LINKCMD=%@P%\link.exe
 =

 3. Build druntime by running make -f win32.mak in the druntime directory.

 4. Build Phobos by running make -f win32.mak in the phobos directory.

 - Jonathan M Davis



Re: Forking phobos

2011-04-03 Thread Jens Mueller
Aleksandar Ružičić wrote:
 Thanks! I've changed sc.ini, built druntime and then phobos successfully.
 
 Now, I'm able to build phobos.lib but when I try to compile simple
 hello world program and link it to that phobos.lib OPTLINK greets me
 with this:
 
 C:\dmd hello.d
 OPTLINK (R) for Win32  Release 8.00.8
 Copyright (C) Digital Mars 1989-2010  All rights reserved.
 http://www.digitalmars.com/ctg/optlink.html
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(lifetime)
  Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
 --- errorlevel 4
 
 this is my sc.ini:
 
 [Version]
 version=7.51 Build 020
 
 [Environment]
 LIB=C:\Users\Aleksandar\Dropbox\Projects\druntime\lib;C:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\bin\dmd2\windows\lib;C:\bin\dm\lib
 DFLAGS=-IC:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\Users\Aleksandar\Dropbox\Projects\druntime\import
 LINKCMD=%@P%\link.exe
 
 Also, when i do make -f win32.mak unittest I get the same error:
 
  --- std.socket(316) broken test ---
  --- std.regex(3443) broken test ---
 OPTLINK (R) for Win32  Release 8.00.8
 Copyright (C) Digital Mars 1989-2010  All rights reserved.
 http://www.digitalmars.com/ctg/optlink.html
 unittest.obj(unittest)
  Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
 ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
 ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
 ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
 --- errorlevel 4

That's interesting. I'm on Linux. I tried running druntime's unittests
some days ago and I had a very similar problem. I assumed this must be
some local setup problem. But now I see that the problem must be
somewhere else. I have the same undefined references
_D4core5bitop3bsfFNaNbkZi as you.

$ make -f posix.mak unittest
Testing obj/object_
lib/libdruntime.a(gcx_3c4_122.o): In function `_D2gc3gcx3Gcx4markMFPvPvZv':
src/gc/gcx.d:(.text._D2gc3gcx3Gcx4markMFPvPvZv+0x10f): undefined reference to 
`_D4core5bitop3btsFNbPkkZi'
lib/libdruntime.a(gcx_3c4_122.o): In function 
`_D2gc3gcx3Gcx11fullcollectMFPvZk':
src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x285): undefined 
reference to `_D4core5bitop3bsfFNaNbkZi'
src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x2ff): undefined 
reference to `_D4core5bitop3bsfFNaNbkZi'
src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x3c4): undefined 
reference to `_D4core5bitop3btrFNbPkkZi'
src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x52e): undefined 
reference to `_D4core5bitop3btrFNbPkkZi'
lib/libdruntime.a(lifetime_5b0_478.o): In function 
`_D2rt8lifetime11newCapacityFkkZk':
src/rt/lifetime.d:(.text._D2rt8lifetime11newCapacityFkkZk+0x29): undefined 
reference to `_D4core5bitop3bsrFNaNbkZi'
lib/libdruntime.a(gcbits_3b0_21c.o): In function 
`_D2gc6gcbits6GCBits9testClearMFkZk':
src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits9testClearMFkZk+0x10): undefined 
reference to `_D4core5bitop3btrFNbPkkZi'
lib/libdruntime.a(gcbits_3b0_21c.o): In function 
`_D2gc6gcbits6GCBits7testSetMFkZk':
src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits7testSetMFkZk+0x10): undefined 
reference to `_D4core5bitop3btsFNbPkkZi'
collect2: ld returned 1 exit status
--- errorlevel 1
make: *** [obj/object_] Error 1

How come that the auto-tester (http://d.puremagic.com/test-results/)
does not have this problem? Does the auto-tester use the dmd it is
building?

Jens


Re: Forking phobos

2011-04-03 Thread Sean Kelly
You'll need to build DMD from source. A change was checked in the other day 
that requires it. 

Sent from my iPhone

On Apr 3, 2011, at 3:17 PM, Jens Mueller jens.k.muel...@gmx.de wrote:

 Aleksandar Ružičić wrote:
 Thanks! I've changed sc.ini, built druntime and then phobos successfully.
 
 Now, I'm able to build phobos.lib but when I try to compile simple
 hello world program and link it to that phobos.lib OPTLINK greets me
 with this:
 
 C:\dmd hello.d
 OPTLINK (R) for Win32  Release 8.00.8
 Copyright (C) Digital Mars 1989-2010  All rights reserved.
 http://www.digitalmars.com/ctg/optlink.html
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(lifetime)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
 C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
 --- errorlevel 4
 
 this is my sc.ini:
 
 [Version]
 version=7.51 Build 020
 
 [Environment]
 LIB=C:\Users\Aleksandar\Dropbox\Projects\druntime\lib;C:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\bin\dmd2\windows\lib;C:\bin\dm\lib
 DFLAGS=-IC:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\Users\Aleksandar\Dropbox\Projects\druntime\import
 LINKCMD=%@P%\link.exe
 
 Also, when i do make -f win32.mak unittest I get the same error:
 
 --- std.socket(316) broken test ---
 --- std.regex(3443) broken test ---
 OPTLINK (R) for Win32  Release 8.00.8
 Copyright (C) Digital Mars 1989-2010  All rights reserved.
 http://www.digitalmars.com/ctg/optlink.html
 unittest.obj(unittest)
 Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
 ..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
 ..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
 ..\druntime\lib\druntime.lib(gcx)
 Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
 --- errorlevel 4
 
 That's interesting. I'm on Linux. I tried running druntime's unittests
 some days ago and I had a very similar problem. I assumed this must be
 some local setup problem. But now I see that the problem must be
 somewhere else. I have the same undefined references
 _D4core5bitop3bsfFNaNbkZi as you.
 
 $ make -f posix.mak unittest
 Testing obj/object_
 lib/libdruntime.a(gcx_3c4_122.o): In function `_D2gc3gcx3Gcx4markMFPvPvZv':
 src/gc/gcx.d:(.text._D2gc3gcx3Gcx4markMFPvPvZv+0x10f): undefined reference to 
 `_D4core5bitop3btsFNbPkkZi'
 lib/libdruntime.a(gcx_3c4_122.o): In function 
 `_D2gc3gcx3Gcx11fullcollectMFPvZk':
 src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x285): undefined 
 reference to `_D4core5bitop3bsfFNaNbkZi'
 src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x2ff): undefined 
 reference to `_D4core5bitop3bsfFNaNbkZi'
 src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x3c4): undefined 
 reference to `_D4core5bitop3btrFNbPkkZi'
 src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x52e): undefined 
 reference to `_D4core5bitop3btrFNbPkkZi'
 lib/libdruntime.a(lifetime_5b0_478.o): In function 
 `_D2rt8lifetime11newCapacityFkkZk':
 src/rt/lifetime.d:(.text._D2rt8lifetime11newCapacityFkkZk+0x29): undefined 
 reference to `_D4core5bitop3bsrFNaNbkZi'
 lib/libdruntime.a(gcbits_3b0_21c.o): In function 
 `_D2gc6gcbits6GCBits9testClearMFkZk':
 src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits9testClearMFkZk+0x10): undefined 
 reference to `_D4core5bitop3btrFNbPkkZi'
 lib/libdruntime.a(gcbits_3b0_21c.o): In function 
 `_D2gc6gcbits6GCBits7testSetMFkZk':
 src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits7testSetMFkZk+0x10): undefined 
 reference to `_D4core5bitop3btsFNbPkkZi'
 collect2: ld returned 1 exit status
 --- errorlevel 1
 make: *** [obj/object_] Error 1
 
 How come that the auto-tester (http://d.puremagic.com/test-results/)
 does not have this problem? Does the auto-tester use the dmd it is
 building?
 
 Jens


Re: Forking phobos

2011-04-03 Thread Jens Mueller
Thank you. I'm doing it right now. It works.

Sean Kelly wrote:
 You'll need to build DMD from source. A change was checked in the other day 
 that requires it. 
 
 Sent from my iPhone
 
 On Apr 3, 2011, at 3:17 PM, Jens Mueller jens.k.muel...@gmx.de wrote:
 
  Aleksandar Ružičić wrote:
  Thanks! I've changed sc.ini, built druntime and then phobos successfully.
  
  Now, I'm able to build phobos.lib but when I try to compile simple
  hello world program and link it to that phobos.lib OPTLINK greets me
  with this:
  
  C:\dmd hello.d
  OPTLINK (R) for Win32  Release 8.00.8
  Copyright (C) Digital Mars 1989-2010  All rights reserved.
  http://www.digitalmars.com/ctg/optlink.html
  C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(lifetime)
  Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
  C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
  C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
  C:\Users\Aleksandar\Dropbox\Projects\phobos\phobos.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
  --- errorlevel 4
  
  this is my sc.ini:
  
  [Version]
  version=7.51 Build 020
  
  [Environment]
  LIB=C:\Users\Aleksandar\Dropbox\Projects\druntime\lib;C:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\bin\dmd2\windows\lib;C:\bin\dm\lib
  DFLAGS=-IC:\Users\Aleksandar\Dropbox\Projects\phobos\;C:\Users\Aleksandar\Dropbox\Projects\druntime\import
  LINKCMD=%@P%\link.exe
  
  Also, when i do make -f win32.mak unittest I get the same error:
  
  --- std.socket(316) broken test ---
  --- std.regex(3443) broken test ---
  OPTLINK (R) for Win32  Release 8.00.8
  Copyright (C) Digital Mars 1989-2010  All rights reserved.
  http://www.digitalmars.com/ctg/optlink.html
  unittest.obj(unittest)
  Error 42: Symbol Undefined _D4core5bitop3bsrFNaNbkZi
  ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3bsfFNaNbkZi
  ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btsFNbPkkZi
  ..\druntime\lib\druntime.lib(gcx)
  Error 42: Symbol Undefined _D4core5bitop3btrFNbPkkZi
  --- errorlevel 4
  
  That's interesting. I'm on Linux. I tried running druntime's unittests
  some days ago and I had a very similar problem. I assumed this must be
  some local setup problem. But now I see that the problem must be
  somewhere else. I have the same undefined references
  _D4core5bitop3bsfFNaNbkZi as you.
  
  $ make -f posix.mak unittest
  Testing obj/object_
  lib/libdruntime.a(gcx_3c4_122.o): In function `_D2gc3gcx3Gcx4markMFPvPvZv':
  src/gc/gcx.d:(.text._D2gc3gcx3Gcx4markMFPvPvZv+0x10f): undefined reference 
  to `_D4core5bitop3btsFNbPkkZi'
  lib/libdruntime.a(gcx_3c4_122.o): In function 
  `_D2gc3gcx3Gcx11fullcollectMFPvZk':
  src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x285): undefined 
  reference to `_D4core5bitop3bsfFNaNbkZi'
  src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x2ff): undefined 
  reference to `_D4core5bitop3bsfFNaNbkZi'
  src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x3c4): undefined 
  reference to `_D4core5bitop3btrFNbPkkZi'
  src/gc/gcx.d:(.text._D2gc3gcx3Gcx11fullcollectMFPvZk+0x52e): undefined 
  reference to `_D4core5bitop3btrFNbPkkZi'
  lib/libdruntime.a(lifetime_5b0_478.o): In function 
  `_D2rt8lifetime11newCapacityFkkZk':
  src/rt/lifetime.d:(.text._D2rt8lifetime11newCapacityFkkZk+0x29): undefined 
  reference to `_D4core5bitop3bsrFNaNbkZi'
  lib/libdruntime.a(gcbits_3b0_21c.o): In function 
  `_D2gc6gcbits6GCBits9testClearMFkZk':
  src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits9testClearMFkZk+0x10): undefined 
  reference to `_D4core5bitop3btrFNbPkkZi'
  lib/libdruntime.a(gcbits_3b0_21c.o): In function 
  `_D2gc6gcbits6GCBits7testSetMFkZk':
  src/gc/gcbits.d:(.text._D2gc6gcbits6GCBits7testSetMFkZk+0x10): undefined 
  reference to `_D4core5bitop3btsFNbPkkZi'
  collect2: ld returned 1 exit status
  --- errorlevel 1
  make: *** [obj/object_] Error 1
  
  How come that the auto-tester (http://d.puremagic.com/test-results/)
  does not have this problem? Does the auto-tester use the dmd it is
  building?
  
  Jens