- 04 12月, 2017 1 次提交
-
-
由 bors 提交于
[auto-toolstate][2+3/8] Move external tools tests into its own job with --no-fail-fast This PR performs these things: 1. The `aux` job now performs "cargotest" and "pretty" tests. The clippy/rustfmt/rls/miri tests are moved into its own job. 2. These tests are run with `--no-fail-fast`, so that we can get the maximum number of failures of all tools from a single CI run. 3. The test results are stored into a JSON file, ready to be uploaded in the future. This is step 2 and 3/8 of automatic management of broken tools #45861.
-
- 03 12月, 2017 24 次提交
-
-
由 bors 提交于
create a drop ladder for an array if any value is moved out r? @arielb1 first commit for fix https://github.com/rust-lang/rust/issues/34708 (note: this still handles the subslice case in a very broken manner)
-
由 bors 提交于
Always unwind through a Resume and other fixes Should fix most of the small MIR borrowck issues. r? @nikomatsakis
-
由 Ariel Ben-Yehuda 提交于
-
由 kennytm 提交于
-
由 kennytm 提交于
-
由 kennytm 提交于
The cargotest job is renamed to tools for clarification.
-
由 bors 提交于
Fix deduplication of items Fixes #45968. r? @QuietMisdreavus
-
由 bors 提交于
Update compiler-builtins and use it in the 128-bit lowering MIR test This picks up the lang item implementations from https://github.com/rust-lang-nursery/compiler-builtins/pull/210 cc #45676 @est31 @nagisa
-
由 Scott McMurray 提交于
-
由 bors 提交于
rustc: don't unpack newtypes of scalar-pairs with mismatched alignment. This PR fixes a potential problem where a packed newtype of a pair was also considered a pair, even though it didn't have the required alignment of the pair. cc @oli-obk It's possible miri hit something like this, with an unstable feature, but it's more general.
-
由 Scott McMurray 提交于
-
由 Scott McMurray 提交于
-
由 Scott McMurray 提交于
-
由 bors 提交于
rustdoc: Fix issues with cross-crate inlined associated items * Visibility was missing from impl items. * Attributes and docs were missing from consts and types in impls. * Const default values were missing from traits. This unifies the code that handles associated items from impls and traits.
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
This simplifies analysis and borrow-checking because liveness at the resume point can always be simply propagated. Later on, the "dead" Resumes are removed.
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
Region inference can create borrows for an empty region if the borrow is dead. In that case, there's no reason to track the borrow, but because there's no such thing as an EndRegion(ReEmpty) these borrows used to live for the entire function. Fixes #46161.
-
由 Ariel Ben-Yehuda 提交于
Fixes #46159.
-
由 Ariel Ben-Yehuda 提交于
-
由 bors 提交于
rustc: Prepare to enable ThinLTO by default This commit *almost* enables ThinLTO and multiple codegen units in release mode by default but is blocked on #46346 now before pulling the trigger.
-
由 bors 提交于
Point to next token when it is in the expected line r? @nikomatsakis
-
由 Mikhail Modin 提交于
-
由 bors 提交于
incr.comp.: Remove an unnecessary HIR access which enables hashing spans for type definitions. r? @nikomatsakis
-
- 02 12月, 2017 15 次提交
-
-
由 bors 提交于
On type mismatch error highlight `&` when type matches When the only difference between the two types in a type error is that one is a reference to the other type (`T` vs `&T`) or both are references differing only in their mutability (`&T` vs `&mut T`), don't highlight the type (`T`).
-
由 bors 提交于
Add case insensitive comparison, besides Levenstein for DYM Closes #46332 Draft version. The idea is that Levenstein does not work for some cases when we have multiple equal weights for strings. I didn't understand the case with `if found != name => Some(found)` so it means that new code does not work correctly yet. At least now I think that we might return all maximal weights from levenstein and think about next cases in priority order: 1) There is exact match -> None 2) There is exact match, but case insensitive -> Some(match) 3) There is some match from levenstein -> Some(matches.take_any) 4) There is no match -> None @estebank WDYT?
-
由 bors 提交于
Fix hygiene bug. Fixes #42708. r? @nrc
-
由 bors 提交于
Fix invalid HTML escape Fixes #46289. r? @QuietMisdreavus
-
由 bors 提交于
Bump to 1.24.0 * Update the in-tree version number * Update the bootstrap compiler * Remove `cfg(stage0)` annotations * Update crate dependencies * Update Cargo itself
-
由 bors 提交于
Use suggestions instead of notes ref mismatches On type mismatch errors, use a suggestion when encountering minimal differences in type differences due to refs, instead of a note.
-
由 bors 提交于
Generic Associated Types Parsing & Name Resolution Hi! This PR adds parsing for generic associated types!
🎉 🎉 🎉 Tracking Issue: #44265 ## Notes For Reviewers * [x] I still need to add the stdout and stderr files to my ui tests. It takes me a *long* time to compile the compiler locally, so I'm going to add this as soon as possible in the next day or so. * [ ] My current ui tests aren't very good or very thorough. I'm reusing the `parse_generics` and `parse_where_clause` methods from elsewhere in the parser, so my changes work without being particularly complex. I'm not sure if I should duplicate all of the generics test cases for generic associated types. It might actually be appropriate to duplicate everything here, since we don't want to rely on an implementation detail in case it changes in the future. If you think so too, I'll adapt all of the generics test cases into the generic associated types test cases. * [ ] There is still more work required to make the run-pass tests pass here. In particular, we need to make the following errors disappear: ``` error[E0110]: lifetime parameters are not allowed on this type --> ./src/test/run-pass/rfc1598-generic-associated-types/streaming_iterator.rs:23:41 | 23 | bar: <T as StreamingIterator>::Item<'static>, | ^^^^^^^ lifetime parameter not allowed on this type ``` ``` error[E0261]: use of undeclared lifetime name `'a` --> ./src/test/run-pass/rfc1598-generic-associated-types/iterable.rs:15:47 | 15 | type Iter<'a>: Iterator<Item = Self::Item<'a>>; | ^^ undeclared lifetime ``` There is a FIXME comment in streaming_iterator. If you uncomment that line, you get the following: ``` error: expected one of `!`, `+`, `,`, `::`, or `>`, found `=` --> ./src/test/run-pass/rfc1598-generic-associated-types/streaming_iterator.rs:29:45 | 29 | fn foo<T: for<'a> StreamingIterator<Item<'a>=&'a [i32]>>(iter: T) { /* ... */ } | ^ expected one of `!`, `+`, `,`, `::`, or `>` here ``` r? @nikomatsakis -
由 Eduard-Mihai Burtescu 提交于
-
由 bors 提交于
Rollup of 13 pull requests - Successful merges: #45880, #46280, #46373, #46376, #46385, #46386, #46387, #46392, #46400, #46401, #46405, #46412, #46421 - Failed merges:
-
由 Guillaume Gomez 提交于
-
由 bors 提交于
MIR: change "lvalue" terminology to "place". As pointed out elsewhere, "lvalue" vs "rvalue" is a misleading/obscure distinction and several other choices have been proposed, the one I prefer being "place" vs "value". This PR only touches the "lvalue" side, and only in MIR-related code, as it's already a lot and could rot.
-
由 Esteban Küber 提交于
On type mismatch errors, use a suggestion when encountering minimal differences in type differences due to refs, instead of a note.
-
由 kennytm 提交于
build_helper: destination file can't be up to date when not exists Function "up_to_date" return incorrect result if mtime for all fetched sources is set to epoch time. Add existence check to function. This fix required for a [Guix](https://www.gnu.org/software/guix/) package because a Nix builder set mtime of all sources to epoch time.
-
由 kennytm 提交于
Hide private trait type params and show hidden items with document-private As discussed in #46380, this PR removes the `strip-hidden` pass from `--document-private-items` which allows showing `#[doc(hidden)]` with rustdoc. The second commit removes the trait implementation from the docs if the trait's parameter is private.
-
由 kennytm 提交于
rustc: Filter out bogus extern crate warnings Rustdoc has for some time now used the "everybody loops" pass in the compiler to avoid typechecking and otherwise avoid looking at implementation details. In #46115 the placement of this pass was pushed back in the compiler to after macro expansion to ensure that it works with macro-expanded code as well. This in turn caused the regression in #46271. The bug here was that the resolver was producing `def_id` instances for "possibly unused extern crates" which would then later get processed during typeck to actually issue lint warnings. The problem was that *after* resolution these `def_id` nodes were actually removed from the AST by the "everybody loops" pass. This later, when we tried to take a look at `def_id`, caused the compiler to panic. The fix applied here is a bit of a heavy hammer which is to just, in this one case, ignore the `extern crate` lints if the `def_id` looks "bogus" in any way (basically if it looks like the node was removed after resolution). The real underlying bug here is probably that the "everybody loops" AST pass is being stressed to much beyond what it was originally intended to do, but this should at least fix the ICE for now... Closes #46271
-