diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 86b2a3724eb2..f2aafc1e1000 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2006-11-18 John David Anglin + + PR fortran/27885 + PR middle-end/28176 + * stor-layout.c (set_sizetype): Limit precision of *bitsizetypes types + to MAX_FIXED_MODE_SIZE. + 2006-11-18 Kaveh R. Ghazi * builtins.c (integer_valued_real_p): Handle fmin/fmax. diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c index ccbf9f7f3199..94ea457c5a58 100644 --- a/gcc/stor-layout.c +++ b/gcc/stor-layout.c @@ -1941,7 +1941,8 @@ set_sizetype (tree type) calculating signed sizes / offsets in bits. However, when cross-compiling from a 32 bit to a 64 bit host, we are limited to 64 bit precision. */ - int precision = MIN (oprecision + BITS_PER_UNIT_LOG + 1, + int precision = MIN (MIN (oprecision + BITS_PER_UNIT_LOG + 1, + MAX_FIXED_MODE_SIZE), 2 * HOST_BITS_PER_WIDE_INT); tree t;