std.boxer broken?
David L. Davis
SpottedTiger at yahoo.com
Fri Apr 14 06:37:46 PDT 2006
In article <e1nc14$1gb5$1 at digitaldaemon.com>, Daniel Keep says...
>
>
>Oh, look--it's me and something's not working again :P
>
>Ok, I'm using dmd 0.153 and the included phobos. When I try to compile
>the following:
>
>import std.boxer;
>import std.stdio;
>
>int main()
>{
> Box x = box(42);
> writefln("The answer to life, the universe, "
> "and everything is: %d", unbox!(int)(x));
>
> return 0;
>}
>
>I get the following error message:
>
>e:\Bin\Bin\link.exe boxtest,,,user32+kernel32/noi;
>OPTLINK (R) for Win32 Release 7.50B1
>Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
>
>boxtest.obj(boxtest)
> Error 42: Symbol Undefined _assert_3std5boxer
>--- errorlevel 1
>
>Anyone have any idea what I stuffed up? Other stuff, including
>writefln, seems to work fine (well, apart from MinTL but we've already
>covered that one), so I'm fairly sure it's linking in phobos.lib properly.
>
>Any advice would be greatly appreciated.
>
> -- Daniel.
Daniel, adding the "extern (C) void assert_3std5boxer() { }" line below which
Burton shared with us many moons ago will also work (without the need for
-release switch) and you can add unittests as well.
# // daniel1.d - tested with WinXP SP1 D v0.154
# // Unittest: dmd daniel1.d -unittest
# // Compile : dmd daniel1.d
#
# private import std.boxer;
# private import std.stdio;
#
# // Burton Radons <burton-radons[at]smocky[dot]com>
# // This entry allows -unittest for testing, and/or no need
# // for the -release switch
# extern (C) void assert_3std5boxer() { }
#
# int main()
# {
# Box x = box(42);
# writefln("The answer to life, the universe, "
# "and everything is: %d", unbox!(int)(x));
#
# return 0;
# }
#
# unittest
# {
# Box x = box(42);
# assert(42 == unbox!(int)(x));
# writefln("unittest done.");
# }
Output:
------------
C:\dmd>dmd daniel1.d
C:\dmd\bin\..\..\dm\bin\link.exe daniel1,,,user32+kernel32/noi;
C:\dmd>daniel1
The answer to life, the universe, and everything is: 42
C:\dmd>
David L.
-------------------------------------------------------------------
"Dare to reach for the Stars...Dare to Dream, Build, and Achieve!"
-------------------------------------------------------------------
MKoD: http://spottedtiger.tripod.com/D_Language/D_Main_XP.html
More information about the Digitalmars-d
mailing list