-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't call FieldPlacement::count
when count is too large
#57042
Don't call FieldPlacement::count
when count is too large
#57042
Conversation
…will not fit in host's usize.
(rust_highfive has picked a reviewer for you, use r? to override) |
Cc @eddyb |
Note that this PR doesn't actually make it so that our test suite runs cleanly for a host=i686 adn target=x86_64. Namely, I observe this failure on
So ... is this an improvement over the status quo (and we just should revise the test suite a touch, maybe)? Or should we consider a broader change so that we get closer behavior in these various contexts...? |
Let's merge it for now. It's definitely an improvement. @bors r+ rollup |
📌 Commit 0eacf2c has been approved by |
⌛ Testing commit 0eacf2c with merge 5edef531f2fdbfbdad7ea53fc4254d9cf747e7bd... |
💔 Test failed - status-appveyor |
@bors retry |
…n-fieldplacement-count, r=michaelwoerister Don't call `FieldPlacement::count` when count is too large Sidestep ICE in `FieldPlacement::count` by not calling it when count will not fit in host's usize. (I briefly played with trying to fix this by changing `FieldPlacement::count` to return a `u64`. However, based on how `FieldPlacement` is used, it seems like this would be a largely pointless pursuit... I'm open to counter-arguments, however.) Fix rust-lang#57038
Rollup of 26 pull requests Successful merges: - #56425 (Redo the docs for Vec::set_len) - #56906 (Issue #56905) - #57042 (Don't call `FieldPlacement::count` when count is too large) - #57175 (Stabilize `let` bindings and destructuring in constants and const fn) - #57192 (Change std::error::Error trait documentation to talk about `source` instead of `cause`) - #57296 (Fixed the link to the ? operator) - #57368 (Use CMAKE_{C,CXX}_COMPILER_LAUNCHER for ccache) - #57400 (Rustdoc: update Source Serif Pro and replace Heuristica italic) - #57417 (rustdoc: use text-based doctest parsing if a macro is wrapping main) - #57433 (Add link destination for `read-ownership`) - #57434 (Remove `CrateNum::Invalid`.) - #57441 (Supporting backtrace for x86_64-fortanix-unknown-sgx.) - #57450 (actually take a slice in this example) - #57459 (Reference tracking issue for inherent associated types in diagnostic) - #57463 (docs: Fix some 'second-edition' links) - #57466 (Remove outdated comment) - #57493 (use structured suggestion when casting a reference) - #57498 (make note of one more normalization that Paths do) - #57499 (note that FromStr does not work for borrowed types) - #57505 (Remove submodule step from README) - #57510 (Add a profiles section to the manifest) - #57511 (Fix undefined behavior) - #57519 (Correct RELEASES.md for 1.32.0) - #57522 (don't unwrap unexpected tokens in `format!`) - #57530 (Fixing a typographical error.) - #57535 (Stabilise irrefutable if-let and while-let patterns) Failed merges: r? @ghost
Sidestep ICE in
FieldPlacement::count
by not calling it when count will not fit in host's usize.(I briefly played with trying to fix this by changing
FieldPlacement::count
to return au64
. However, based on howFieldPlacement
is used, it seems like this would be a largely pointless pursuit... I'm open to counter-arguments, however.)Fix #57038