- 24 4月, 2021 20 次提交
-
-
由 Yuki Okushi 提交于
Document From implementations for Waker and RawWaker CC #51430
-
由 Yuki Okushi 提交于
Make a few functions private These were made public in 3105bcfd. This is so long ago I doubt anyone remembers why they're public. No one outside rustc_session uses them, including in-tree tools.
-
由 Yuki Okushi 提交于
Use details tag for trait implementors. Part of #83332 and following on from #83337 and #83355. This removes one category of JS-generated toggles (implementors), and replaces them with a `<details>` tag. This simplifies the JS, and fixes some bugs where things that were supposed to be hidden by the toggle were not hidden. Compare https://hoffman-andrews.com/rust/details-implementors/std/io/trait.Read.html#impl-Read vs https://doc.rust-lang.org/nightly/std/io/trait.Read.html#implementors. This introduces a `left: -23px` to put the toggle in the correct place, matching the current style for `.collapse-toggle`. It's worth noting this introduces a slight behavior change: since the entire line is now a `<summary>`, any part of the line is clickable. So for instance, in `impl Read for File`, clicking `impl` or `for` will collapse / expand the docs. Clicking `Read` or `File` still links to the appropriate documentation as before.
-
由 Yuki Okushi 提交于
bootstrap: use bash on illumos to run install scripts The default illumos shell ("sh" in the default PATH) is ksh93, rather than bash, and does not support constructs like "local" that came from bash. The bootstrap function for invoking "install.sh" scripts should use "bash" explicitly there to avoid issues.
-
由 Yuki Okushi 提交于
implement `TrustedRandomAccess` for `Take` iterator adapter `TrustedRandomAccess` requires the iterator length to fit within `usize`. `take(n)` only constrains the upper bound of an iterator. So if the inner is `TrustedRandomAccess` (which already implies a finite length) then so can be `Take`. ```````@rustbot``````` label T-libs-impl
-
由 bors 提交于
Add a suggestion when using a type alias instead of trait alias Fixes #43913 r? `@estebank`
-
由 bors 提交于
Rollup of 11 pull requests Successful merges: - #80805 (Improve `Iterator::by_ref` example) - #84248 (Remove duplicated fn(Box<[T]>) -> Vec<T>) - #84321 (rustdoc: Convert sub-variant toggle to HTML) - #84359 (
⬆ rust-analyzer) - #84374 (Clean up .gitignore) - #84387 (Move `sys_common::poison` to `sync::poison`) - #84430 (doc/platform-support: clarify UEFI support) - #84433 (Prevent control, shift and alt keys to make search input lose focus) - #84444 (doc: Get rid of "[+] show undocumented items" toggle on numeric From impls) - #84456 (Fix ICE if original_span(fn_sig) returns a span not in body sourcefile) - #84469 (Update comment on `PrimTy::name_str`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup -
由 Yuki Okushi 提交于
Update comment on `PrimTy::name_str` It's no longer used by rustdoc.
-
由 Yuki Okushi 提交于
Fix ICE if original_span(fn_sig) returns a span not in body sourcefile Fixes: #84421 r? ````@tmandry```` fyi: ````@wesleywiser```` ````@sdroege```` ````@rajivshah3````
-
由 Yuki Okushi 提交于
doc: Get rid of "[+] show undocumented items" toggle on numeric From impls On most From implementations, the docstring is attached to the function. This is also how people have been [recommended] to do it. Screenshots: * [before](https://user-images.githubusercontent.com/1593513/115767662-323c5480-a35e-11eb-9918-98aba83e9183.png) * [after](https://user-images.githubusercontent.com/1593513/115767675-35374500-a35e-11eb-964f-c28eeb6c807a.png) [recommended]: https://github.com/rust-lang/rust/issues/51430#issuecomment-398322434
-
由 Yuki Okushi 提交于
Prevent control, shift and alt keys to make search input lose focus Part of #84384. r? ````@jsha````
-
由 Yuki Okushi 提交于
doc/platform-support: clarify UEFI support Add missing information on what standard-library features are supported by the UEFI targets. All current UEFI targets (which is i686 and x86_64) only support no_std cross-compilations. `std` support has not been worked on and is unlikely to emerge anytime soon, due to the much restricted environment that UEFI provides.
-
由 Yuki Okushi 提交于
Move `sys_common::poison` to `sync::poison` `sys_common` should not contain publicly exported types, only platform-independent abstractions on top of `sys`, which `sys_common::poison` is not. There is thus no reason for the module to not live under `sync`. Part of #84187.
-
由 Yuki Okushi 提交于
Clean up .gitignore Categorizes entries in the `.gitignore` file. Other changes: - added `desktop.ini` (Windows equivalent of `.DS_Store`) - removed `.hg/` and `.hgignore`
-
由 Yuki Okushi 提交于
⬆ rust-analyzer -
由 Yuki Okushi 提交于
rustdoc: Convert sub-variant toggle to HTML Instead of creating a JS toggle, this injects details/summary for sub-variants of enums. This also fixes the CSS so that the toggle button does not jump when expanding/collapsing. Takes inspiration from #83337 and should be considered part of #83332. Not quite sure if the `.sub-variant` selectors could be further simplified? AFAICS it is only used in that place, and that does not seem to allow any recursion.
-
由 Yuki Okushi 提交于
Remove duplicated fn(Box<[T]>) -> Vec<T> `<[T]>::into_vec()` does the same thing as `Vec::from::<Box<[T]>>()`, so they can be implemented in terms of each other. This was the previous implementation of `Vec::from()`, but was changed in #78461. I'm not sure what the rationale was for that change, but it seems preferable to maintain a single implementation.
-
由 Yuki Okushi 提交于
Improve `Iterator::by_ref` example I split the example into two: one that fails to compile, and one that works. I also made them identical except for the addition of `by_ref` so we don't confuse readers with random differences. cc `@steveklabnik,` who is the one that added the previous version of this example
-
由 bors 提交于
rustc: Use LLVM's new saturating float-to-int intrinsics This commit updates rustc, with an applicable LLVM version, to use LLVM's new `llvm.fpto{u,s}i.sat.*.*` intrinsics to implement saturating floating-point-to-int conversions. This results in a little bit tighter codegen for x86/x86_64, but the main purpose of this is to prepare for upcoming changes to the WebAssembly backend in LLVM where wasm's saturating float-to-int instructions will now be implemented with these intrinsics. This change allows simplifying a good deal of surrounding code, namely removing a lot of wasm-specific behavior. WebAssembly no longer has any special-casing of saturating arithmetic instructions and the need for `fptoint_may_trap` is gone and all handling code for that is now removed. This means that the only wasm-specific logic is in the `fpto{s,u}i` instructions which only get used for "out of bounds is undefined behavior". This does mean that for the WebAssembly target specifically the Rust compiler will no longer be 100% compatible with pre-LLVM 12 versions, but it seems like that's unlikely to be relied on by too many folks. Note that this change does immediately regress the codegen of saturating float-to-int casts on WebAssembly due to the specialization of the LLVM intrinsic not being present in our LLVM fork just yet. I'll be following up with an LLVM update to pull in those patches, but affects a few other SIMD things in flight for WebAssembly so I wanted to separate this change. Eventually the entire `cast_float_to_int` function can be removed when LLVM 12 is the minimum version, but that will require sinking the complexity of it into other backends such as Cranelfit.
-
由 Arpad Borsos 提交于
-
- 23 4月, 2021 20 次提交
-
-
由 Alex Crichton 提交于
-
由 bors 提交于
rustdoc: Remove most fields from ExternalCrate Once https://github.com/rust-lang/rust/issues/84304 is fixed, I can get rid of ExternCrate altogether in favor of CrateNum, but in the meantime, this shrinks ExternalCrate quite a lot. This might hurt compile-times; if it does, I can add `primitive` and `keyword` queries. I expect this to improve compilemem. Helps with https://github.com/rust-lang/rust/issues/76382. r? GuillaumeGomez
-
由 Alex Crichton 提交于
Looks like this platform still isn't quite working yet due to https://bugs.llvm.org/show_bug.cgi?id=50083
-
由 bors 提交于
rustdoc: Hide `#text` in doc-tests Since `#![attr]` and `#[attr]` are the only valid syntax that start with `#`, we can just special case those two tokens. Fixes https://github.com/rust-lang/rust/issues/83284.
-
由 bors 提交于
RustWrapper: work around unification of diagnostic handlers This lets me build against llvm/main as of March 23rd, 2021. I'm not entirely sure this is _correct_, but it appears to be functionally identical to what was done in LLVM: existing callsites of setInlineAsmDiagnosticHandler were moved to SetDiagnosticHandler() on the context object, which we already set up in both places that we called setInlineAsmDiagnosticHandler().
-
由 Joshua Nelson 提交于
-
由 bors 提交于
Added CharIndices::offset function The CharIndices iterator has a field internally called front_offset, that I think would be very useful to have access to. You can already do something like ``char_indices.next().map(|(offset, _)| offset)``, but that is wordy, in addition to not handling the case where the iterator has ended, where you'd want the offset to be equal to the length. I'm very new to the open source world and the rust repository, so I'm sorry if I missed a step or did something weird.
-
由 bors 提交于
Improve rebuilding behaviour of BinaryHeap::retain. This changes `BinaryHeap::retain` such that it doesn't always fully rebuild the heap, but only rebuilds the parts for which that's necessary. This makes use of the fact that retain gives out `&T`s and not `&mut T`s. Retaining every element or removing only elements at the end results in no rebuilding at all. Retaining most elements results in only reordering the elements that got moved (those after the first removed element), using the same logic as was already used for `append`. cc `@KodrAus` `@sfackler` - We briefly discussed this possibility in the meeting last week while we talked about stabilization of this function (#71503).
-
由 Joshua Nelson 提交于
-
由 Joshua Nelson 提交于
-
由 Joshua Nelson 提交于
-
由 Joshua Nelson 提交于
-
由 Rich Kadel 提交于
Fixes: #84421
-
由 Joshua Nelson 提交于
Since `#![attr]` and `#[attr]` are the only valid syntax that start with `#`, we can just special case those two tokens.
-
由 Michael Howell 提交于
-
由 bors 提交于
Use arrayvec 0.7, drop smallvec 0.6 With the arrival of min const generics, many alt-vec libraries have updated to use it in some way and arrayvec is no exception. Use the latest with minor refactoring. Also, rustc_workspace_hack is the only user of smallvec 0.6 in the entire tree, so drop it.
-
由 Augie Fackler 提交于
This lets me build against llvm/main as of March 23rd, 2021. I'm not entirely sure this is _correct_, but it appears to be functionally identical to what was done in LLVM: existing callsites of setInlineAsmDiagnosticHandler were moved to SetDiagnosticHandler() on the context object, which we already set up in both places that we called setInlineAsmDiagnosticHandler().
-
由 Michael Howell 提交于
On most From implementations, the docstring is attached to the function. This is also how people have been [recommended] to do it. Screenshots: * [before](https://user-images.githubusercontent.com/1593513/115767662-323c5480-a35e-11eb-9918-98aba83e9183.png) * [after](https://user-images.githubusercontent.com/1593513/115767675-35374500-a35e-11eb-964f-c28eeb6c807a.png) [recommended]: https://github.com/rust-lang/rust/issues/51430#issuecomment-398322434
-
由 bors 提交于
Rollup of 7 pull requests Successful merges: - #84343 (Remove `ScopeTree::closure_tree`) - #84376 (Uses flex to fix formatting of h1 at any width) - #84377 (Followup to #83944) - #84396 (Update LLVM submodule) - #84402 (Move `sys_common::rwlock::StaticRWLock` etc. to `sys::unix::rwlock`) - #84404 (Check for intrinsics before coercing to a function pointer) - #84413 (Remove `sys::args::Args::inner_debug` and use `Debug` instead) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Dylan DPC 提交于
Remove `sys::args::Args::inner_debug` and use `Debug` instead This removes the method `sys::args::Args::inner_debug` on all platforms and implements `Debug` for `Args` instead. I believe this creates a more natural API for the different platforms under `sys`: export a type `Args: Debug + Iterator + ...` vs. `Args: Iterator + ...` and with a method `inner_debug`.
-