-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
Rollup of 6 pull requests #58691
Rollup of 6 pull requests #58691
Commits on Feb 13, 2019
-
Clarify guarantees for
Box
allocationJethro Beekman committedFeb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for e41e694 - Browse repository at this point
Copy the full SHA e41e694View commit details -
Avoid allocation in std::sys::unix::weak
If we add a terminating NUL to the name in the `weak!` macro, then `fetch()` can use `CStr::from_bytes_with_nul()` instead of `CString`.
Configuration menu - View commit details
-
Copy full SHA for 70c5af8 - Browse repository at this point
Copy the full SHA 70c5af8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 33d80bf - Browse repository at this point
Copy the full SHA 33d80bfView commit details
Commits on Feb 16, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 235a6b7 - Browse repository at this point
Copy the full SHA 235a6b7View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd18cc5 - Browse repository at this point
Copy the full SHA bd18cc5View commit details -
Configuration menu - View commit details
-
Copy full SHA for b2bf37a - Browse repository at this point
Copy the full SHA b2bf37aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f7c4931 - Browse repository at this point
Copy the full SHA f7c4931View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7db96a3 - Browse repository at this point
Copy the full SHA 7db96a3View commit details -
Update src/librustc_mir/interpret/operand.rs
Co-Authored-By: oli-obk <github35764891676564198441@oli-obk.de>
Configuration menu - View commit details
-
Copy full SHA for bee3c67 - Browse repository at this point
Copy the full SHA bee3c67View commit details -
3
Configuration menu - View commit details
-
Copy full SHA for 525983a - Browse repository at this point
Copy the full SHA 525983aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 27e438a - Browse repository at this point
Copy the full SHA 27e438aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4fdeb2d - Browse repository at this point
Copy the full SHA 4fdeb2dView commit details -
2
Configuration menu - View commit details
-
Copy full SHA for 4b08533 - Browse repository at this point
Copy the full SHA 4b08533View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1fe7eb0 - Browse repository at this point
Copy the full SHA 1fe7eb0View commit details
Commits on Feb 20, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 0651157 - Browse repository at this point
Copy the full SHA 0651157View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc20ed6 - Browse repository at this point
Copy the full SHA cc20ed6View commit details -
Configuration menu - View commit details
-
Copy full SHA for f411852 - Browse repository at this point
Copy the full SHA f411852View commit details -
Configuration menu - View commit details
-
Copy full SHA for b09803e - Browse repository at this point
Copy the full SHA b09803eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6464e32 - Browse repository at this point
Copy the full SHA 6464e32View commit details
Commits on Feb 23, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 7cfddfb - Browse repository at this point
Copy the full SHA 7cfddfbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a944b0 - Browse repository at this point
Copy the full SHA 1a944b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for bde4d19 - Browse repository at this point
Copy the full SHA bde4d19View commit details -
Configuration menu - View commit details
-
Copy full SHA for aa0fa75 - Browse repository at this point
Copy the full SHA aa0fa75View commit details
Commits on Feb 24, 2019
-
Rollup merge of rust-lang#57364 - hdhoang:33418_negative_bounds, r=es…
…tebank Improve parsing diagnostic for negative supertrait bounds closes rust-lang#33418 r? @estebank
Configuration menu - View commit details
-
Copy full SHA for ae64668 - Browse repository at this point
Copy the full SHA ae64668View commit details -
Rollup merge of rust-lang#58183 - jethrogb:jb/alloc-box-guarantees, r…
…=SimonSapin Clarify guarantees for `Box` allocation This basically says `Box` does the obvious things for its allocations. See also: https://users.rust-lang.org/t/alloc-crate-guarantees/24981 This may require a T-libs FCP? Not sure. r? @sfackler
Configuration menu - View commit details
-
Copy full SHA for 55b5ab8 - Browse repository at this point
Copy the full SHA 55b5ab8View commit details -
Rollup merge of rust-lang#58442 - cuviper:unix-weak, r=alexcrichton
Simplify the unix `Weak` functionality - We can avoid allocation by adding a NUL to the function name. - We can get `Option<F>` directly, rather than aliasing the inner `AtomicUsize`.
Configuration menu - View commit details
-
Copy full SHA for b78e9f4 - Browse repository at this point
Copy the full SHA b78e9f4View commit details -
Rollup merge of rust-lang#58454 - pitdicker:windows_stdio, r=alexcric…
…hton Refactor Windows stdio and remove stdin double buffering I was looking for something nice and small to work on, tried to tackle a few FIXME's in Windows stdio, and things grew from there. This part of the standard library contains some tricky code, and has changed over the years to handle more corner cases. It could use some refactoring and extra comments. Changes/fixes: - Made `StderrRaw` `pub(crate)`, to remove the `Write` implementations on `sys::Stderr` (used unsynchronised for panic output). - Remove the unused `Read` implementation on `sys::windows::stdin` - The `windows::stdio::Output` enum made sense when we cached the handles, but we can use simple functions like `is_console` now that we get the handle on every read/write - `write` can now calculate the number of written bytes as UTF-8 when we can't write all `u16`s. - If `write` could only write one half of a surrogate pair, attempt another write for the other because user code can't reslice in any way that would allow us to write it otherwise. - Removed the double buffering on stdin. Documentation on the unexposed `StdinRaw` says: 'This handle is not synchronized or buffered in any fashion'; which is now true. - `sys::windows::Stdin` now always only partially fills its buffer, so we can guarantee any arbitrary UTF-16 can be re-encoded without losing any data. - `sys::windows::STDIN_BUF_SIZE` is slightly larger to compensate. There should be no real change in the number of syscalls the buffered `Stdin` does. This buffer is a little larger, while the extra buffer on Stdin is gone. - `sys::windows::Stdin` now attempts to handle unpaired surrogates at its buffer boundary. - `sys::windows::Stdin` no langer allocates for its buffer, but the UTF-16 decoding still does. ### Testing I did some manual testing of reading and writing to console. The console does support UTF-16 in some sense, but doesn't supporting displaying characters outside the BMP. - compile stage 1 stdlib with a tiny value for `MAX_BUFFER_SIZE` to make it easier to catch corner cases - run a simple test program that reads on stdin, and echo's to stdout - write some lines with plenty of ASCII and emoji in a text editor - copy and paste in console to stdin - return with `\r\n\` or CTRL-Z - copy and paste in text editor - check it round-trips ----- Fixes rust-lang#23344. All but one of the suggestions in that issue are now implemented. the missing one is: > * When reading data, we require the entire set of input to be valid UTF-16. We should instead attempt to read as much of the input as possible as valid UTF-16, only returning an error for the actual invalid elements. For example if we read 10 elements, 5 of which are valid UTF-16, the 6th is bad, and then the remaining are all valid UTF-16, we should probably return the first 5 on a call to `read`, then return an error, then return the remaining on the next call to `read`. Stdin in Console mode is dealing with text directly input by a user. In my opinion getting an unpaired surrogate is quite unlikely in that case, and a valid reason to error on the entire line of input (which is probably short). Dealing with it is incompatible with an unbuffered stdin, which seems the more interesting guarantee to me.
Configuration menu - View commit details
-
Copy full SHA for 4dcb7af - Browse repository at this point
Copy the full SHA 4dcb7afView commit details -
Rollup merge of rust-lang#58511 - oli-obk:const_to_op, r=RalfJung
Const to op simplification r? @RalfJung alternative to rust-lang#58486
Configuration menu - View commit details
-
Copy full SHA for 1082a29 - Browse repository at this point
Copy the full SHA 1082a29View commit details -
Rollup merge of rust-lang#58642 - tspiteri:intra-rustdoc-prim-method,…
… r=GuillaumeGomez rustdoc: support methods on primitives in intra-doc links Fixes rust-lang#58598.
Configuration menu - View commit details
-
Copy full SHA for f01ebc5 - Browse repository at this point
Copy the full SHA f01ebc5View commit details