FreeBSD 6 amd64 tweak: Compiling problem: CLASSINFO_SIZE assert

Thomas Kuehne thomas-dloop at
Thu Jan 11 00:09:34 PST 2007

Hash: SHA1

Sean Chittenden schrieb am 2007-01-08:
>== Quote from Thomas Kuehne (thomas-dloop at's article
>> Hash: SHA1
>> Sean Chittenden schrieb am 2007-01-07:
>> > Howdy.  I'm on an amd64 FreeBSD 6.2-rc machine and have been able to get it to compile on FreeBSD6 amd64 with the
> following
>> > patches.  I haven't conditionalized them inside of the build infrastructure, but am going to likely incorporate them
> into
>> > my port upgrade to 0.21.  The problem is described below:
>> The mainline GDC can currently only produce object code for 32bit
>> targets. Personally I'm using a 64bit GDC binary to compile for i686:
> ... but... I don't have any 32bit machines anymore, anywhere!  :~]
> I'll see if I can dig up some extra boxes that I can reformat and mash on.  If you had to give a thumbnail guess as to what
> needed to be done to get X86_64 finished or what the timeframe is on that, would/could you?  I was searching around and
> didn't find anything that hinted at where it was on the road map.
> If I comment out the assert() in format.d, it finishes compiling successfully, however it fails to link object code.
> % gdc hello.d
> /usr/local/lib/libgphobos.a(outofmemory.o)(.rodata+0x18):../.././../gcc-4.0-20061228/libphobos/std/outofmemory.d:26:
> undefined reference to `_D6object6Object6toHashMFZk'

That is because object.d seems to be missing or badly mangled:

_D6object6Object6toHashMFZk -> uint object.Object.toHash(this)

The "uint" above should have been ulong for 64bit systems.

> Which leaves inquiring minds curious as to if/when or to suck up a 32bit universe for a while.  Thanks, I know these are
> obnoxious questions to have to answer.  *grin*  -sc

That is the beauty with X86_64 systems: they allow running 64bit and 32bit
applications side by side. David has said in the past that he wouldn't
declare GDC 1.0 before 64 bit were to be implemented.




More information about the Digitalmars-d mailing list