Auto merge of #120313 - Nadrieril:graceful-error, r=compiler-errors

pattern_analysis: Gracefully abort on type incompatibility

This leaves the option for a consumer of the crate to return `Err` instead of panicking on type error. rust-analyzer could use that (e.g. https://github.com/rust-lang/rust-analyzer/issues/15808).

Since the only use of `TypeCx::bug` is in `Constructor::is_covered_by`, it is tempting to return `false` instead of `Err()`, but that would cause "non-exhaustive match" false positives.

r? `@compiler-errors`
This commit is contained in:
bors 2024-02-05 21:36:25 +00:00
commit f6d314ff1c

Diff content is not available