- 10 6月, 2022 5 次提交
-
-
由 Pietro Albini 提交于
-
由 Pietro Albini 提交于
Co-authored-by: Nbjorn3 <bjorn3@users.noreply.github.com>
-
由 Pietro Albini 提交于
-
由 Pietro Albini 提交于
-
由 Pietro Albini 提交于
-
- 09 6月, 2022 32 次提交
-
-
由 Pietro Albini 提交于
This commit allows users to change the contents of the "config" key in src/stage0.json without having it overridden the next time the bump-stage0 tool is executed.
-
由 bors 提交于
Rollup of 5 pull requests Successful merges: - #95632 (impl Read and Write for VecDeque<u8>) - #95860 (Stabilize `$$` in Rust 1.63.0) - #97838 (hexagon: adapt test for upstream output changes) - #97843 (Relax mipsel-sony-psp's linker script) - #97874 (rewrite combine doc comment) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Yuki Okushi 提交于
rewrite combine doc comment it was from 2014 and somewhat outdated
-
由 Yuki Okushi 提交于
Relax mipsel-sony-psp's linker script Previously, the linker script forcefully kept all `.lib.stub` sections, unnecessarily bloating the binary. Now, the script is LTO and `--gc-sections` friendly. `--nmagic` was also added to the linker, because page alignment is not required on the PSP. This further reduces binary size. Accompanying changes for the `psp` crate are found in: https://github.com/overdrivenpotato/rust-psp/pull/118
-
由 Yuki Okushi 提交于
hexagon: adapt test for upstream output changes The output of IR formatting changed slightly in upstream rev a0bc67e555f404d0e7ddb2e78cb891d96eaf913d (https://reviews.llvm.org/D123096). I'm not actually sure what any of that means, as I don't even know what hexagon is in this context, but this change allows the test to pass on both old and new LLVMs. r? ``@nikic``
-
由 Yuki Okushi 提交于
Stabilize `$$` in Rust 1.63.0 # Stabilization proposal This PR proposes the stabilization of a subset of `#![feature(macro_metavar_expr)]` or more specifically, the stabilization of dollar-dollar (`$$`). Tracking issue: #83527 Version: 1.63 (2022-06-28 => beta, 2022-08-11 => stable). ## What is stabilized ```rust macro_rules! foo { () => { macro_rules! bar { ( $$( $$any:tt )* ) => { $$( $$any )* }; } }; } fn main() { foo!(); } ``` ## Motivation For more examples, see the [RFC](https://github.com/markbt/rfcs/blob/macro_metavar_expr/text/0000-macro-metavar-expr.md). Users must currently resort to a tricky and not so well-known hack to declare nested macros with repetitions. ```rust macro_rules! foo { ($dollar:tt) => { macro_rules! bar { ( $dollar ( $any:tt )* ) => { $dollar ( $any )* }; } }; } fn main() { foo!($); } ``` As seen above, such hack is fragile and makes work with declarative macros much more unpleasant. Dollar-dollar (`$$`), on the other hand, makes nested macros more intuitive. ## What isn't stabilized `count`, `ignore`, `index` and `length` are not being stabilized due to the lack of consensus. ## History * 2021-02-22, [RFC: Declarative macro metavariable expressions](https://github.com/rust-lang/rfcs/pull/3086) * 2021-03-26, [Tracking Issue for RFC 3086: macro metavariable expressions](https://github.com/rust-lang/rust/issues/83527) * 2022-02-01, [Implement macro meta-variable expressions](https://github.com/rust-lang/rust/pull/93545) * 2022-02-25, [[1/2] Implement macro meta-variable expressions](https://github.com/rust-lang/rust/pull/94368) * 2022-03-11, [[2/2] Implement macro meta-variable expressions](https://github.com/rust-lang/rust/pull/94833) * 2022-03-12, [Fix remaining meta-variable expression TODOs](https://github.com/rust-lang/rust/pull/94884) * 2019-03-21, [[macro-metavar-expr] Fix generated tokens hygiene](https://github.com/rust-lang/rust/pull/95188) * 2022-04-07, [Kickstart the inner usage of macro_metavar_expr](https://github.com/rust-lang/rust/pull/95761) * 2022-04-07, [[macro_metavar_expr] Add tests to ensure the feature requirement](https://github.com/rust-lang/rust/pull/95764) ## Non-stabilized expressions https://github.com/rust-lang/rust/issues/83527 lists several concerns about some characteristics of `count`, `index` and `length` that effectively make their stabilization unfeasible. `$$` and `ignore`, however, are not part of any discussion and thus are suitable for stabilization. It is not in the scope of this PR to detail each concern or suggest any possible converging solution. Such thing should be restrained in this tracking issue. ## Tests This list is a subset of https://github.com/rust-lang/rust/tree/master/src/test/ui/macros/rfc-3086-metavar-expr * [Ensures that nested macros have correct behavior](https://github.com/rust-lang/rust/blob/master/src/test/ui/macros/rfc-3086-metavar-expr/dollar-dollar-has-correct-behavior.rs) * [Compares produced tokens to assert expected outputs](https://github.com/rust-lang/rust/blob/master/src/test/ui/macros/rfc-3086-metavar-expr/feature-gate-macro_metavar_expr.rs) * [Checks the declarations of the feature](https://github.com/rust-lang/rust/blob/master/src/test/ui/macros/rfc-3086-metavar-expr/required-feature.rs) * [Verifies all possible errors that can occur due to incorrect user input](https://github.com/rust-lang/rust/blob/master/src/test/ui/macros/rfc-3086-metavar-expr/syntax-errors.rs) ## Possible future work Once consensus is achieved, other nightly expressions can be stabilized. Thanks ``@markbt`` for creating the RFC and thanks to ``@petrochenkov`` and ``@mark-i-m`` for reviewing the implementations.
-
由 Yuki Okushi 提交于
impl Read and Write for VecDeque<u8> Implementing `Read` and `Write` for `VecDeque<u8>` fills in the VecDeque api surface where `Vec<u8>` and `Cursor<Vec<u8>>` already impl Read and Write. Not only for completeness, but VecDeque in particular is a very handy mock interface for a TCP echo service, if only it supported Read/Write. Since this PR is just an impl trait, I don't think there is a way to limit it behind a feature flag, so it's "insta-stable". Please correct me if I'm wrong here, not trying to rush stability.
-
由 bors 提交于
BTreeSet: avoid intermediate sorting when collecting sorted iterators As [pointed out by droundy](https://users.rust-lang.org/t/question-about-btreeset-implementation/76427), an obvious optimization is to skip the first step introduced by #88448 (creation of a vector and sorting) and it's easy to do so for btree's own iterators. Also, exploit `from` in the examples.
-
由 lcnr 提交于
-
由 bors 提交于
optimize `superset` method of `IntervalSet` Given that intervals in the `IntervalSet` are sorted and strictly separated( it means the `end` of the previous interval will not be equal to the `start` of the next interval), we can reduce the complexity of the `superset` method from O(NMlogN) to O(2N) (N is the number of intervals and M is the length of each interval)
-
由 bors 提交于
Update minifier version to 0.2.1 This change and these changes come from an idea of `@camelid:` instead of creating a string, we just `write` the type into the file directly. I don't think it'll have a big impact on perf but it's still a potential small improvement. r? `@notriddle`
-
由 bors 提交于
use precise spans for recursive const evaluation This fixes https://github.com/rust-lang/rust/issues/73283 by using a `TyCtxtAt` with a more precise span when the interpreter recursively calls itself. Hopefully such calls are sufficiently rare that this does not cost us too much performance. (In theory, cycles can also arise through layout computation, as layout can depend on consts -- but layout computation happens all the time so we'd have to do something to not make this terrible for performance.)
-
由 bors 提交于
Rollup of 9 pull requests Successful merges: - #97557 (Fix indices and remove some unwraps in arg mismatch algorithm) - #97830 (Add std::alloc::set_alloc_error_hook example) - #97856 (Don't suggest adding `let` in certain `if` conditions) - #97857 (Suggest escaping `box` as identifier) - #97871 (Suggest using `iter()` or `into_iter()` for `Vec`) - #97882 (Add regresion test for #67498) - #97883 (Remove `ignore-compare-mode-nll` annotations from tests) - #97891 (Update books) - #97894 (Fix polonius compare mode.) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Michael Goulet 提交于
Fix polonius compare mode. This fixes running compiler tests in `--compare-mode=polonius`. The `-Zborrowck=mir` option was removed in #95565. r? `@jackh726`
-
由 Michael Goulet 提交于
Update books ## nomicon 5 commits in 10d40c59a581c66d8ecd29ad18d410bf97ed524d..3a43983b76174342b7dbd3e12ea2c49f762e52be 2022-05-07 10:45:07 +0900 to 2022-05-30 17:01:30 +0900 - Changes for `c_unwind` (rust-lang/nomicon#365) - Upgrade actions/checkout to v3 (rust-lang/nomicon#367) - Clarification of borrowck (rust-lang/nomicon#354) - Update the now stale warning about `PhantomData<T>` and dropck (rust-lang/nomicon#363) - Minor language fixes (rust-lang/nomicon#364) ## reference 1 commits in b74825d8f88b685e239ade00f00de68ba4cd63d4..683bfe5cd64d589c6a1645312ab5f93b6385ccbb 2022-05-20 14:30:30 -0700 to 2022-05-27 11:54:20 -0700 - Reflect changes about unsizing casts in const context (rust-lang/reference#1221) ## book 58 commits in b4dd5f00b87190ad5ef42cbc2a88a783c6ae57ef..396fdb69de7fb18f24b15c7ad13491b1c1fa7231 2022-05-24 21:37:06 -0400 to 2022-06-08 10:02:35 -0400 - Make not-equals operator example consistent. Fixes rust-lang/book#3189. - Propagate nostarch appendix edits to src - Edits to edits to appendices - Edits from nostarch for the appendices - Propagate edits to chapter 20 to src - Edits to edits of chapter 20 - Update reference to chapter 12 code that was changed - Edits from nostarch to chapter 20 - Fix spelling mistake - Propagate ch17 tech review changes to src - Responses to tech review for ch17 - Chapter 17 tech review comments - Update dependencies via `cargo update` - Propagate changes from ch16 tech review to src - Tech review comments and responses for chapter 16 - Println captures in chapter 15 - Propagate chapter 15 tech review edits to src - Responses to tech review for chapter 15 - Tech review comments for chapter 15 - Merge branch 'ch14-tr' - Upgrade to Rust 1.61 - Upgrade to Rust 1.60 - More little improvements to chapter 12 - Update references to ch12 to be Config::build instead of new - Propagate ch12 tech review edits to src - Responses to tech review of chapter 12 - Tech review comments of chapter 12 - Show directory layouts including integration test files - Clarify that integration/doc tests aren't run if unit tests fail - Propagate ch11 tech review edits to src - Edits in response to tech review of chapter 11 - Comments from tech review in chapter 11 - Propagate other edits to nostarch - Adjust listing so error output line numbers match - Merge remote-tracking branch 'origin/pr/3153' into ch10-tr - Reword a rewording about lifetimes of values vs references - Merge remote-tracking branch 'origin/pr/3107' into ch10-tr - Merge remote-tracking branch 'origin/pr/3104' into ch10-tr - Propagate ch10 edits to src - Edits in response to tech review - Comments from tech review for chapter 10 - New dictionary entries - Demonstrate a better expect message. Fixes rust-lang/book#2918. - Propagate tech review ch9 edits to src - Termination has stabilized! Fixes rust-lang/book#3116. - Respond to tech review comments to chapter 9 - Comments from tech review on chapter 9 - Propagate changes for ch8 to src - Clarify that split_whitespace returns an iterator - Add type annotation in nostarch snapshot too - Extra-clarity qualification - Edits to chapter 8 in response to tech review - Comments from tech review for chapter 8 - Propagate tech review edits to ch06 src - Responses to tech review comments on chapter 6 - Chapter 6 after tech review - Snapshot of chapter 1 for nostarch - src: use TLSv1.3 if we're going to specify at all ## rust-by-example 4 commits in 2ed26865e8c29ef939dc913a97bd321cadd72a9a..dbb7e5e2345ee26199ffba218156b6009016a20c 2022-05-18 17:23:47 -0300 to 2022-06-02 16:30:51 -0300 - Fix typo in Traits → "impl Trait" (rust-lang/rust-by-example#1544) - doc_testing.md: clarify tests vs doc-tests (rust-lang/rust-by-example#1547) - unsafe::asm.md: add some explicit declarations (rust-lang/rust-by-example#1548) - Update dsl.md to remove unnecessary braces (rust-lang/rust-by-example#1543) ## rustc-dev-guide 6 commits in 554c00e4805df7f7bffac7db408437d62d6dfb9a..6e4d6435db89bcc027b1bba9742e4f59666f5412 2022-05-24 17:15:35 -0700 to 2022-06-08 08:06:32 +0900 - Make build scripts and proc macros work with the suggested rust-analyzer config (rust-lang/rustc-dev-guide#1365) - improve rustc_interface examples a little (rust-lang/rustc-dev-guide#1362) - Bump regex from 1.4.3 to 1.5.5 in /ci/date-check (rust-lang/rustc-dev-guide#1364) - Clarify cargo fallback behavior for rustup link (rust-lang/rustc-dev-guide#1273) - Update rustc-driver related examples - Triage some date references related to traits ## embedded-book 1 commits in f7cefbb995eec8c6148f213235e9e2e03268e775..cbb494f96da3268c2925bdadc65ca83d42f2d4ef 2022-04-20 10:38:51 +0000 to 2022-05-26 06:58:43 +0000 - Add Chinese translation repository (rust-embedded/book#318)
-
由 Michael Goulet 提交于
Remove `ignore-compare-mode-nll` annotations from tests Since #95565 these do nothing as compare-mode-nll has been removed. r? `@jackh726`
-
由 Michael Goulet 提交于
Add regresion test for #67498 Closes #67498 r? `@compiler-errors`
-
由 Michael Goulet 提交于
Suggest using `iter()` or `into_iter()` for `Vec` We cannot do that for `&Vec` because `#[rustc_on_unimplemented]` is limited (it does not clean generic instantiation for references, only for ADTs). `@rustbot` label +A-diagnostics
-
由 Michael Goulet 提交于
Suggest escaping `box` as identifier Fixes #97810.
-
由 Michael Goulet 提交于
Don't suggest adding `let` in certain `if` conditions Avoid being too eager to suggest `let` in an `if` condition with an `=`, namely when the LHS of the `=` isn't even valid as a pattern (to a first degree approximation). This heustic I came up with kinda sucks. Let me know if it needs to be refined.
-
由 Michael Goulet 提交于
Add std::alloc::set_alloc_error_hook example
-
由 Michael Goulet 提交于
Fix indices and remove some unwraps in arg mismatch algorithm This is a more conservative fix than #97542, addressing some indices which were used incorectly and unwraps which are bound to panic (e.g. when the provided and expected arg counts differ). Beta nominating this as it's quite easy to cause ICEs -- I wrote a fuzzer and found hundreds of examples of ICEs. cc `@jackh726` as author of #92364, and `@estebank` as reviewer of that PR. fixes #97484 r? `@jackh726` this should be _much_ easier to review than the other PR
😅 -
由 bors 提交于
Update cargo 7 commits in 38472bc19f2f76e245eba54a6e97ee6821b3c1db..85e457e158db216a2938d51bc3b617a5a7fe6015 2022-05-31 02:03:24 +0000 to 2022-06-07 21:57:52 +0000 - Make -Z http-registry use index.crates.io when accessing crates-io (rust-lang/cargo#10725) - Respect submodule update=none strategy in .gitmodules (rust-lang/cargo#10717) - Expose rust-version through env var (rust-lang/cargo#10713) - add validation for string "true"/"false" in lto profile (rust-lang/cargo#10676) - Enhance documentation of testing (rust-lang/cargo#10726) - Clear disk space on CI. (rust-lang/cargo#10724) - Enforce to use tar v0.4.38 (rust-lang/cargo#10720)
-
由 Eric Huss 提交于
-
由 Eric Huss 提交于
-
由 Eric Huss 提交于
-
由 bors 提交于
Rollup of 5 pull requests Successful merges: - #97507 (Move rustfmt downloads from bootstrap.py to rustbuild) - #97813 (Sync rustc_codegen_gcc) - #97878 (Add regression test for anonymous lifetimes) - #97879 (remove unneeded code) - #97880 (Fix typo: fo->for) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Matthias Krüger 提交于
Fix typo: fo->for
-
由 Matthias Krüger 提交于
remove unneeded code The init function isn't longer part of `Condvar`. Consequently, we removed the implementation for the target os `hermit`.
-
由 Matthias Krüger 提交于
Add regression test for anonymous lifetimes Fixes #84634. Seems like this issue was already solved. I added a regression test just in case so we can close it with peace in mind. r? `@notriddle`
-
由 Matthias Krüger 提交于
Sync rustc_codegen_gcc
-
由 Matthias Krüger 提交于
Move rustfmt downloads from bootstrap.py to rustbuild - Allow verifying CI downloads using src/stage0.json - Change download functions not to hard-code `ci-artifacts.rust-lang.org` - Change `format::format` to take a `Builder` so it has access to `download_component`. I think we may want to reconsider the distinction between Build and Builder at some point; I don't think it's particularly useful. - Move rustfmt downloads out of bootstrap.py Fixes https://github.com/rust-lang/rust/issues/95136. Helps with https://github.com/rust-lang/rust/issues/94829. This is based on https://github.com/rust-lang/rust/pull/96687 for simplicity.
-
- 08 6月, 2022 3 次提交
-
-
由 Yuki Okushi 提交于
-
由 Yuki Okushi 提交于
-
由 SparrowLii 提交于
-