mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-29 21:34:57 +00:00
[ty] Fix 'too many cycle iterations' for unions of literals (#20137)
## Summary Decrease the maximum number of literals in a union before we collapse to the supertype. The better fix for this will be https://github.com/astral-sh/ty/issues/957, but it is very tempting to solve this for now by simply decreasing the limit by one, to get below the salsa limit of 200. closes https://github.com/astral-sh/ty/issues/660 ## Test Plan Added a regression test that would previously lead to a "too many cycle iterations" panic.
This commit is contained in:
parent
b3c4005289
commit
1842cfe333
2 changed files with 18 additions and 1 deletions
|
@ -202,7 +202,10 @@ enum ReduceResult<'db> {
|
|||
|
||||
// TODO increase this once we extend `UnionElement` throughout all union/intersection
|
||||
// representations, so that we can make large unions of literals fast in all operations.
|
||||
const MAX_UNION_LITERALS: usize = 200;
|
||||
//
|
||||
// For now (until we solve https://github.com/astral-sh/ty/issues/957), keep this number
|
||||
// below 200, which is the salsa fixpoint iteration limit.
|
||||
const MAX_UNION_LITERALS: usize = 199;
|
||||
|
||||
pub(crate) struct UnionBuilder<'db> {
|
||||
elements: Vec<UnionElement<'db>>,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue