[Prev] Thread [Next]  |  [Prev] Date [Next]

[Factor-talk] <CFNumber> still references c-types at runtime in deployed image. Not sure why Joe Groff Mon Sep 01 07:01:23 2008

I was trying to deploy an image, and the resulting app is bombing out  
with a "no-c-type" exception inside a call to <CFNumber>. Now it's no  
big deal to switch on "deploy-c-types?", but looking at the definition  
of <CFNumber> in core-foundation, it seems like it shouldn't need the  
c-types at runtime:

GENERIC: <CFNumber> ( number -- alien )
M: integer <CFNumber>
     [ f kCFNumberLongLongType ] dip <longlong> CFNumberCreate ;
M: float <CFNumber>
     [ f kCFNumberDoubleType ] dip <double> CFNumberCreate ;
M: t <CFNumber>
     drop f kCFNumberIntType 1 <int> CFNumberCreate ;
M: f <CFNumber>
     drop f kCFNumberIntType 0 <int> CFNumberCreate ;

Is there something here I'm missing that prevents the optimizing  
compiler picking out the <c-object> calls? Calling infer on each  
method definition gives the expected (( object -- object )), and "core- 
foundation" reload doesn't emit any warnings or errors.


This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
Factor-talk mailing list