Robert Feldt <feldt / ce.chalmers.se> writes:

> On Mon, 20 Nov 2000, Dave Thomas wrote:
> 
> > Do FIXABLE (and POSFIXABLE, NEGFIXABLE) in ruby.h do what you want?
> > 
> No, I need a directive or function that returns true if 0 <= v <
> 2**(uintbits) where uintbits is number of bits in unsigned int on machine
> in question. So for example 2**31 should be ok since it can be stored in
> uint even though it's not a Fixnum.

Can you compare against UINT_MAX from limits.h?

Alternatively,

  if a is a Fixnum, then it fits

  if a is a Bignum then
     it fits if a.size <= sizeof(int)


(I theenk  ;-)


Dave