yasm_internal_error(N_("destination too large"));
/* General size warnings */
- if (warn && !yasm_intnum_check_size(intn, valsize, rshift, 2))
+ if (warn<0 && !yasm_intnum_check_size(intn, valsize, rshift, 1))
+ yasm__warning(YASM_WARN_GENERAL, line,
+ N_("value does not fit in signed %d bit field"),
+ valsize);
+ if (warn>0 && !yasm_intnum_check_size(intn, valsize, rshift, 2))
yasm__warning(YASM_WARN_GENERAL, line,
N_("value does not fit in %d bit field"), valsize);
int bigendian, int warn, unsigned long line);
/** Check to see if intnum will fit without overflow into size bits.
- * If is_signed is 1, intnum is treated as a signed number.
* \param intn intnum
* \param size number of bits of output space
* \param rshift right shift