unable to use native functors with gcc 3.4.3?

Filip Konvicka filip.konvicka.removethisantispamtoken at logis.cz
Thu May 11 22:43:08 CEST 2006


> I'll try to dump the exports on linux to see whether the function is 
> really missing or whether there is a naming mismatch...

I think that I can confirm that this the function is really not 
exported. Running "nm emulator.exe | grep sClone" yields

080f2dc0 T OZ_sClone
081332c8 B OZ_sCloneBlockDynamic
0807d820 W _ZN10ByteString14sCloneRecurseVEv
0807d850 W _ZN10ByteString7sCloneVEv
... (some more _ZN exports)

So no OZ_sCloneBlock is here. I tried this with the windows (cygwin) build:

[fkonvick at vemas win32-i486]$ 
/opt/mingw/cross-tools/bin/i386-mingw32msvc-nm emulator.dll | grep sCloneB

68376d90 B _OZ_sCloneBlockDynamic
682b3332 t __GLOBAL__D__ZN5Board13sCloneBoardDoEv
682b3326 t __GLOBAL__I__ZN5Board13sCloneBoardDoEv
682b151e T __Z14OZ_sCloneBlockPjS_i
682b12c0 T __ZN5Board13sCloneBoardDoEv

The __Z14OZ_sCloneBlockPjS_i function is apparently here, and can be 
linked at runtime (however I think that it should be exported like 
OZ_sCloneBlockDynamic, i.e. C-style, not C++).

I think that the functions like OZ_sCloneBlock need to get into mozart.h 
(like OZ_sClone), but I'm not familiar with how things get exported from 
Mozart (maybe declaring this function in mozart.h suffices?) I also 
don't know which of all CPI functions are missing there.

Cheers,
Filip




More information about the mozart-hackers mailing list