Skip to content

fix:Fix MIR const evaluator panic due to incompatible integer operands. - #23046

Open
YUZHEthefool wants to merge 1 commit into
rust-lang:masterfrom
YUZHEthefool:fix-22954-const-eval-integer-mismatch
Open

fix:Fix MIR const evaluator panic due to incompatible integer operands.#23046
YUZHEthefool wants to merge 1 commit into
rust-lang:masterfrom
YUZHEthefool:fix-22954-const-eval-integer-mismatch

Conversation

@YUZHEthefool

@YUZHEthefool YUZHEthefool commented Aug 5, 2026

Copy link
Copy Markdown

错误代码让常量求值器收到了两种不兼容的整数表示。原实现默认它们一定相同,因此直接 panic;现在会先检查,不兼容时返回普通错误,避免 rust-analyzer 崩溃。
<The error code caused the constant evaluator to receive two incompatible representations of integers. The original implementation defaults that they must be the same, so it panics directly.
So now it will be checked first and return a normal error if it is incompatible to avoid rust-analyzer crashing.>
Fixed #22954

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 5, 2026
@ChayimFriedman2

Copy link
Copy Markdown
Contributor

This is not the way. MIR eval is not at fault here. MIR lowering should fail on that code, and in fact any code that has a type checking error, but that is not implemented currently and perhaps will not suffice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

panic: incompatible integer types adding enum and int

3 participants