[LWM] SYSTEM:INTEGER-TO-64BIT undefined?
Hello,
I'm trying to build a FFI for the Mac OS X (10.3.7) CoreMIDI framework
using LW 4.4. One of the data types defined in the MIDIServices.h file
is:
typedef UInt64 MIDITimeStamp;
I traced down the definition of 'UInt64' and used the foreign parser to
generate a FFI for the MacTypes.h and Math64.h headers (part of the
CarbonCore framework). Unfortunately when I compile the results I get a
warning that SYSTEM:INTEGER-TO-64BIT is undefined.
For example compiling:
====================================================================
(fli:define-c-typedef (uint64 (:foreign-name "UInt64"))
(:unsigned :long-long))
(fli:define-foreign-function (u64-subtract "U64Subtract" :source)
((left uint64) (right uint64))
:result-type
uint64
:language
:ansi-c)
Results in:
====================================================================
;;; Safety = 3, Speed = 1, Space = 1, Float = 1, Interruptible = 0
;;; Compilation speed = 1, Debug = 2, Fixnum safety = 3
;;; Source level debugging is on
;;; Source file recording is on
;;; Cross referencing is on
; (FLI:DEFINE-FOREIGN-TYPE UINT64)
; (SUBFUNCTION U64-SUBTRACT (FLI:DEFINE-FOREIGN-FUNCTION U64-SUBTRACT))
; (FLI:DEFINE-FOREIGN-FUNCTION U64-SUBTRACT)
; (FLI:DEFINE-FOREIGN-FUNCTION U64-SUBTRACT)
The following functions are undefined:
SYSTEM:UNSIGNED-BIGNUM-FROM-64BIT which is referenced by (SUBFUNCTION
U64-SUBTRACT (FLI:DEFINE-FOREIGN-FUNCTION U64-SUBTRACT))
SYSTEM:UNSIGNED-INTEGER-TO-64BIT which is referenced by (SUBFUNCTION
U64-SUBTRACT (FLI:DEFINE-FOREIGN-FUNCTION U64-SUBTRACT))
;;; Compilation finished with 1 warning, 0 errors.
Can I do anything without a function to coerce a fixnum or bignum to an
'unsigned long long'?
I'm using a G4 PowerBook.
Thanks in advance for any help...
-greg
_______________________________________________________
Greg Wuller greg@wuller.com
_______________________________________________________