std.boxer problem
Tydr Schnubbis
fake at address.dude
Sat Apr 29 10:07:31 PDT 2006
John Demme wrote:
> Tydr Schnubbis wrote:
>
>> Alexander Panek wrote:
>>> Tydr Schnubbis wrote:
>>>> Why can't I cast from Object to Box? That seems to defeat the purpose
>>>> of boxing. I get this error:
>>>>
>>>> serverlist.d(185): e2ir: cannot cast from object.Object to Box
>>>> Internal error: e2ir.c 267
>>>
>>> Object o = new Object();
>>> Box b = box(o);
>>>
>>> foo bar = unbox!(foo)(b);
>>>
>> No luck.
>>
>>
>> import std.boxer;
>>
>> void main()
>> {
>> Object o = new Object();
>> Box b = box(o);
>>
>> int bar = unbox!(int)(b);
>> }
>>
>> c:\prog\test\D>dmd boxing2.d
>> c:\prog\dmd\bin\..\..\dm\bin\link.exe boxing2,,,user32+kernel32/noi;
>> OPTLINK (R) for Win32 Release 7.50B1
>> Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
>>
>> boxing2.obj(boxing2)
>> Error 42: Symbol Undefined _assert_3std5boxer
>> --- errorlevel 1
>>
>>
>> --------
>> Maybe it's just a configuration problem? I've got dmd 0.155.
>
> That one's a bug with templating code inside of libraries. You need to
> compile your code with -release.
Ah, so I guess it's currently unusable for real projects, then. I
solved my original problem without using boxing. So I'm okay for now. :)
More information about the Digitalmars-d
mailing list