Uh oh!
There was an error while loading. Please reload this page.
make ConstEvaluatable more strict - #74595
Conversation
lcnr
commented
Jul 21, 2020
@bors try |
bors
commented
Jul 21, 2020
⌛ Trying commit 617f7ad0b02ca21994b4cf28d14634486163b166 with merge 536076e3df53cc305e0c3c5f38bdc73f6d9f08bb... |
Uh oh!
There was an error while loading. Please reload this page.
bors
commented
Jul 21, 2020
☀️ Try build successful - checks-actions, checks-azure |
lcnr
commented
Jul 21, 2020
It looks like the crater queue is fairly full. @Mark-Simulacrum do we currently have the capacity to do another check run? I also did some small changes here, so once again @bors try |
bors
commented
Jul 21, 2020
⌛ Trying commit 65395c0710061f8745bdfab3520256a178e92c9d with merge a5913924b14838b364c42230cae014cc2534331d... |
bors
commented
Jul 21, 2020
☀️ Try build successful - checks-actions, checks-azure |
lcnr
commented
Jul 22, 2020
Well, will go ahead and add this PR into the crate queue. If we don't have the capacity for this we can just remove it again. @craterbot check |
craterbot
commented
Jul 22, 2020
👌 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
craterbot
commented
Jul 28, 2020
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
craterbot
commented
Jul 28, 2020
🚨 Experiment 🆘 Can someone from the infra team check in on this? @rust-lang/infra |
Mark-Simulacrum
commented
Jul 28, 2020
@craterbot retry seems to have been spurious |
craterbot
commented
Jul 28, 2020
🚨 Error: failed to parse the command 🆘 If you have any trouble with Crater please ping |
lcnr
commented
Jul 28, 2020
@craterbot retry |
craterbot
commented
Jul 28, 2020
🛠️ Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
lcnr
commented
Jul 31, 2020
This behavior was introduced in #70452 which was merged on the 15.04.2020, meaning that this has been only stable for 2 stable versions. (since 1.43.0) So hopefully there aren't many uses of this yet |
craterbot
commented
Aug 3, 2020
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
craterbot
commented
Aug 4, 2020
🚨 Experiment 🆘 Can someone from the infra team check in on this? @rust-lang/infra |
Mark-Simulacrum
commented
Aug 4, 2020
@craterbot retry |
craterbot
commented
Aug 4, 2020
🛠️ Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
craterbot
commented
Aug 4, 2020
🚧 Experiment ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more |
1a1c3dc to
1dd00e6Comparelcnr
commented
Sep 8, 2020
I wasn't able to reproduce this locally, but added a |
oli-obk
commented
Sep 8, 2020
r=me with CI passing |
lcnr
commented
Sep 8, 2020
@bors r=oli-obk |
bors
commented
Sep 8, 2020
📌 Commit 4226a17 has been approved by |
Aaron1011
commented
Sep 8, 2020
@bors retry |
bors
commented
Sep 8, 2020
⌛ Testing commit 4226a17 with merge 8d92815944e001c9703489b285f04a9eb6567699... |
bors
commented
Sep 8, 2020
💔 Test failed - checks-actions |
lcnr
commented
Sep 9, 2020
How can I reproduce this locally? I don't understand this error |
oli-obk
commented
Sep 9, 2020
The only thing I can come up with that could cause this difference is |
lcnr
commented
Sep 9, 2020
@bors r=oli-obk |
bors
commented
Sep 9, 2020
📌 Commit 74e0719 has been approved by |
bors
commented
Sep 9, 2020
bors
commented
Sep 9, 2020
☀️ Test successful - checks-actions, checks-azure |
Mark-Simulacrum
commented
Sep 15, 2020
This was an improvement of up to 2% on wf-projection-stress. Presumably not an expected result? |
We were afraid of causing a regression here and had similar results 🤔 Probably some inlining changes or something but not really expected |
relevant zulip discussion: https://rust-lang.zulipchat.com/#narrow/stream/146212-t-compiler.2Fconst-eval/topic/.60ConstEvaluatable.60.20generic.20functions/near/204125452
Let's see how much this impacts. Depending on how this goes this should probably be a future compat warning.
Short explanation: we currently forbid anonymous constants which depend on generic types, e.g.
[0; std::mem::size_of::<T>]currently errors.We previously checked this by evaluating the constant and returned an error if that failed. This however allows things like
which is a backwards compatibility hazard. This also has worrying interactions with mir optimizations (#74491 (comment)) and intrinsics (#74538).
r? @oli-obk@eddyb