- 01 8月, 2018 40 次提交
-
-
由 Oliver Schneider 提交于
-
由 Oliver Schneider 提交于
-
由 Oliver Schneider 提交于
-
由 Oliver Schneider 提交于
-
由 bors 提交于
Rollup of 30 pull requests Successful merges: - #52340 (Document From trait implementations for OsStr, OsString, CString, and CStr) - #52628 (Cleanup some rustdoc code) - #52732 (Remove unstable and deprecated APIs) - #52745 (Update clippy to latest master) - #52771 (Clarify thread::park semantics) - #52778 (Improve readability of serialize.rs) - #52810 ([NLL] Don't make "fake" match variables mutable) - #52821 (pretty print for std::collections::vecdeque) - #52822 (Fix From<LocalWaker>) - #52824 (Fix -Wpessimizing-move warnings in rustllvm/PassWrapper) - #52825 (Make sure #47772 does not regress) - #52831 (remove references to AUTHORS.txt file) - #52842 (update comment) - #52846 (Add timeout to use of `curl` in bootstrap.py.) - #52851 (Make the tool_lints actually usable) - #52853 (Improve bootstrap help on stages) - #52859 (Use Vec::extend in SmallVec::extend when applicable) - #52861 (Add targets for HermitCore (https://hermitcore.org) to the Rust compiler and port libstd to it.) - #52867 (releases.md: fix 2 typos) - #52870 (Implement Unpin for FutureObj and LocalFutureObj) - #52876 (run-pass/const-endianness: negate before to_le()) - #52878 (Fix wrong issue number in the test name) - #52883 (Include lifetime in mutability suggestion in NLL messages) - #52888 (Use suggestions for shell format arguments) - #52904 (NLL: sort diagnostics by span) - #52905 (Fix a typo in unsize.rs) - #52907 (NLL: On "cannot move out of type" error, print original before rewrite) - #52914 (Only run the sparc-abi test on sparc) - #52918 (Backport 1.27.2 release notes) - #52929 (Update compatibility note for 1.28.0 to be correct) Failed merges: r? @ghost
-
由 Pietro Albini 提交于
Update compatibility note for 1.28.0 to be correct You can still put implementations on `dyn Trait + Send + Send`, but it'd be the same as putting them on `dyn Trait + Send`. This is why the error is that there are duplicate definitions in the example.
-
由 Pietro Albini 提交于
Backport 1.27.2 release notes r? @Mark-Simulacrum
-
由 Pietro Albini 提交于
Only run the sparc-abi test on sparc It is not required for LLVM to have SPARC target support, so it is necessary to only run this test when LLVM does support SPARC. Sadly, it isn’t possible to specify exactly this constraint. Instead, we specify that this test should run on SPARC host only (it surely is sane assumption to make that compiler running on a SPARC can generate SPARC, right?) Since you cannot specify multiple `only-*` to have it run on both 32-bit and 64-bit SPARC we pick 64-bit SPARC, because it is exactly what is being tested by this test. Fixes #52881
-
由 Pietro Albini 提交于
Rollup merge of #52907 - pnkfelix:issue-52877-original-source-should-precede-suggestions, r=petrochenkov NLL: On "cannot move out of type" error, print original before rewrite NLL: On "cannot move out of type" error, print original source before rewrite. * Arguably this change is sometimes injecting noise into the output (namely in the cases where the suggested rewrite is inline with the suggestion and we end up highlighting the original source code). I would not be opposed to something more aggressive/dynamic, like revising the suggestion code to automatically print the original source when necessary (e.g. when the error does not have a span that includes the span of the suggestion). * Also, as another note on this change: The doc comment for `Diagnostic::span_suggestion` says: ```rust /// The message /// /// * should not end in any punctuation (a `:` is added automatically) /// * should not be a question /// * should not contain any parts like "the following", "as shown" ``` * but the `:` is *not* added when the emitted line appears out-of-line relative to the suggestion. I find that to be an unfortunate UI experience. ---- As a drive-by fix, also changed code to combine multiple suggestions for a pattern into a single multipart suggestion (which vastly improves user experience IMO). ---- Includes the updates to expected NLL diagnostics. Fix #52877
-
由 Pietro Albini 提交于
Fix a typo in unsize.rs RfC -> RFC
-
由 Pietro Albini 提交于
NLL: sort diagnostics by span Sorting the output diagnostics by span is a long planned revision to the NLL diagnostics that we hope will yield a less surprising user experience in some case. Once we got them buffered, it was trivial to implement. (The hard part is skimming the resulting changes to the diagnostics to make sure nothing broke... Note that I largely rubber-stamped the `#[rustc_regions]` output change.) Fix #51167
-
由 Pietro Albini 提交于
Use suggestions for shell format arguments Follow up to #52649.
-
由 Pietro Albini 提交于
Include lifetime in mutability suggestion in NLL messages Fix #52880.
-
由 Pietro Albini 提交于
Fix wrong issue number in the test name I made a mistake in previous PR #52620, second issue number was wrong, changing from #52133 to #52113 r? @kennytm
-
由 Pietro Albini 提交于
run-pass/const-endianness: negate before to_le() `const LE_I128` needs parentheses to negate the value *before* calling `to_le()`, otherwise it doesn't match the operations performed in the black-boxed part of the test. This only makes a tangible difference on big-endian targets.
-
由 Pietro Albini 提交于
Implement Unpin for FutureObj and LocalFutureObj cc @MajorBreakfast r? @aturon
-
由 Pietro Albini 提交于
releases.md: fix 2 typos
-
由 Pietro Albini 提交于
Add targets for HermitCore (https://hermitcore.org) to the Rust compiler and port libstd to it. As a start, the port uses the simplest possible configuration (no jemalloc, abort on panic) and makes use of existing Unix-specific code wherever possible. It adds targets for x86_64 (current main HermitCore platform) and aarch64 (HermitCore platform under development). Together with the patches to "liblibc" (https://github.com/rust-lang/libc/pull/1048) and llvm (https://github.com/rust-lang/llvm/pull/122), this enables HermitCore applications to be written in Rust.
-
由 Pietro Albini 提交于
Use Vec::extend in SmallVec::extend when applicable As calculated in #52738, `Vec::extend` is much faster than `push`ing to it in a loop. We can take advantage of this method in `SmallVec` too - at least in cases when its underlying object is an `AccumulateVec::Heap`. ~~This approach also accidentally improves the `push` loop of the `AccumulateVec::Array` variant, because it doesn't utilize `SmallVec::push` which performs `self.reserve(1)` with every iteration; this is unnecessary, because we're already reserving the whole space we will be needing by performing `self.reserve(iter.size_hint().0)` at the beginning.~~
-
由 Pietro Albini 提交于
Improve bootstrap help on stages Cc @EddyB
-
由 Pietro Albini 提交于
Make the tool_lints actually usable cc #44690 Necessary for rust-lang-nursery/rust-clippy#2955 and rust-lang-nursery/rust-clippy#2977 This PR makes it possible for lint tools (at the moment only for Clippy) to implement the `tool_lints`, like it was documented in #52018. Because the `declare_lint` macro is pretty cluttered right now, there was not really a good way to add the `tool_name` as an additional argument of the macro. That's why I chose to introduce the new `declare_tool_lint` macro. The switch from `&str` to `String` in the `lint_groups` `FxHashMap` is because I got weird error messages in the `check_lint_name` method. And the `by_name` field of the `LintStore` also uses `String`. ### What comes with this PR: If this PR lands and Clippy switches to the `tool_lints`, the currently used methods ```rust #[cfg_attr(feature = "cargo-clippy", allow(clippy_lint))] #[allow(unknown_lints, clippy_lint)] ``` to `allow`/`warn`/`deny`/`forbid` Clippy lints, won't have any effects anymore, but also won't produce a warning. That is because the name of `clippy_lint` will then be `clippy::clippy_lint`. (Maybe we can add a clippy lint to search for `cfg_attr` appearances with the `cargo-clippy` feature?) r? @oli-obk
-
由 Pietro Albini 提交于
Add timeout to use of `curl` in bootstrap.py. Recently we've seen a lot of "30 minutes no output" spurious errors while downloading the bootstrap compiler. This added several timeout options so if the "30 minutes no output" errors were caused by connection or transfer issue, we could fail quicker for curl to retry.
-
由 Pietro Albini 提交于
update comment r? @joshtriplett Addressing comment: https://github.com/rust-lang/rust/pull/52761#pullrequestreview-141323066
-
由 Pietro Albini 提交于
remove references to AUTHORS.txt file Rust does not ship an AUTHORS.txt file anymore.
-
由 Pietro Albini 提交于
Make sure #47772 does not regress Mostly to make my life in https://github.com/rust-lang/rust/pull/52206 harder.^^ Or should I just add that test there?
-
由 Pietro Albini 提交于
Fix -Wpessimizing-move warnings in rustllvm/PassWrapper These are producing warnings when building rustc (`warning: moving a local object in a return statement prevents copy elision [-Wpessimizing-move]`).
-
由 Pietro Albini 提交于
Fix From<LocalWaker> This is a follow-up to https://github.com/rust-lang/rust/pull/52640 Fixes `From<LocalWaker>` which is affected by the same accidental drop bug (unless I'm totally mistaken) r? @cramertj
-
由 Pietro Albini 提交于
pretty print for std::collections::vecdeque I want pretty print function for VecDeque like Vec. ```rust use std::collections::VecDeque; fn main() { let mut d: VecDeque<i32> = VecDeque::new(); d.push_back(4); d.push_back(4); d.push_back(6); let mut v: Vec<i32> = Vec::new(); v.push(4); v.push(4); v.push(6); } ``` ``` (gdb) p v $1 = Vec<i32>(len: 3, cap: 4) = {4, 4, 6} (gdb) p d $2 = VecDeque<i32>(len: 3, cap: 8) = {4, 4, 6} ``` Thanks.
-
由 Pietro Albini 提交于
[NLL] Don't make "fake" match variables mutable These variables can't be mutated by the user, but since they have names the unused-mut lint thinks that it should check them.
-
由 Pietro Albini 提交于
Improve readability of serialize.rs
-
由 Pietro Albini 提交于
Clarify thread::park semantics It took me quite some time to realize that the example is not actually racy, so let's clarify it? :-)
-
由 Pietro Albini 提交于
Update clippy to latest master r? @oli-obk There is a regression in the version in current nightly that falsely lints `println!` and `writeln!` that use named arguments, thinking all rhs values for the argument expressions are literals even when they are not. This update includes the fix for that.
-
由 Pietro Albini 提交于
Remove unstable and deprecated APIs
-
由 Pietro Albini 提交于
Cleanup some rustdoc code Commits are mostly individual though some do depend on others.
-
由 Pietro Albini 提交于
Document From trait implementations for OsStr, OsString, CString, and CStr As part of issue #51430 (cc @skade). The allocation and copy claims should be double-checked. r? @steveklabnik
-
由 bors 提交于
rustc: Disallow machine applicability in foreign macros Recent changes to lints disallowed lints from being emitted against code located in foreign macros, except for future-incompatible lints. For a future incompatible lint, however, the automatic suggestions may not be applicable! This commit updates this code path to force all applicability suggestions made to foreign macros to never be `MachineApplicable`. This should avoid rustfix actually attempting fixing these suggestions, causing non-compiling code to be produced. Closes rust-lang/cargo#5799
-
由 Ryan Scheel 提交于
-
由 Mark Rousskov 提交于
-
由 Mark Rousskov 提交于
-
由 Mark Rousskov 提交于
Removes some unused code and de-publicizes structs
-