From: Albert G. <Dr....@t-...> - 2008-08-15 10:56:29
|
Albert Graef wrote: >> Just pretend that it's an int in the extern declaration. That should >> just work (FLW), even if you pass it a bigint (which gives you the >> necessary range to represent all unsigned int values). > > No, it doesn't right now. Only 'long' arguments allow a bigint parameter > right now. But it's easy to extend this to the other C int types (char, > short, int), I'm working on that. Ok, I've implemented this, so if you need to pass an unsigned int constant which is too big to be represented as a positive Pure int then you can just pass a bigint instead. This works with all C int types now. (In fact, since int constants are converted to bigints automatically when they fall outside the int range, even something like foo 0xffffffff will do the right thing.) For unsigned return values, you can use the appropriate uint et al routines, as discussed previously. I consider this fixed now. Cue the "Don't worry..." song again. ;-) Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |