lto-streamer-in: Adjust assert [PR102989]

With _BitInt(575) or any other _BitInt(513) or larger constants we can
run into this assertion.  MAX_BITSIZE_MODE_ANY_INT is just a value from
which WIDE_INT_MAX_PRECISION is derived.

2023-08-10  Jakub Jelinek  <jakub@redhat.com>

	PR c/102989
	* lto-streamer-in.cc (lto_input_tree_1): Assert TYPE_PRECISION
	is up to WIDE_INT_MAX_PRECISION rather than MAX_BITSIZE_MODE_ANY_INT.
This commit is contained in:
Jakub Jelinek 2023-08-10 09:23:08 +02:00
parent b129d6b5f5
commit d5ad55a83d

View file

@ -1888,7 +1888,7 @@ lto_input_tree_1 (class lto_input_block *ib, class data_in *data_in,
for (i = 0; i < len; i++) for (i = 0; i < len; i++)
a[i] = streamer_read_hwi (ib); a[i] = streamer_read_hwi (ib);
gcc_assert (TYPE_PRECISION (type) <= MAX_BITSIZE_MODE_ANY_INT); gcc_assert (TYPE_PRECISION (type) <= WIDE_INT_MAX_PRECISION);
result = wide_int_to_tree (type, wide_int::from_array result = wide_int_to_tree (type, wide_int::from_array
(a, len, TYPE_PRECISION (type))); (a, len, TYPE_PRECISION (type)));
streamer_tree_cache_append (data_in->reader_cache, result, hash); streamer_tree_cache_append (data_in->reader_cache, result, hash);