http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52488
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-03-12 12:55:14 UTC --- + size_max = (1 << GET_MODE_BITSIZE (GET_MODE (my_fp))) - 1; + if (size >= size_max) Do you have a guarantee that GET_MODE_BITSIZE here is never 32 or more? (1 << GET_MODE_BITSIZE (GET_MODE (my_fp))) - 1 is GET_MODE_MASK (GET_MODE (my_fp)). And, why >= ? Subtracting 255 for 8-bit fp or 65535 for 16-bit fp should still work.