- 29 6月, 2017 3 次提交
-
-
由 bors 提交于
avoid translating roots with predicates that do not hold Finally I got around to doing this. Fixes #37725. r? @nikomatsakis
-
由 Ariel Ben-Yehuda 提交于
-
由 bors 提交于
Detect missing `;` on methods with return type `()` - Point out the origin of a type requirement when it is the return type of a method - Point out possibly missing semicolon when the return type is `()` and the implicit return makes sense as a statement - Suggest changing the return type of methods with default return type - Don't suggest changing the return type on `fn main()` - Don't suggest changing the return type on impl fn - Suggest removal of semicolon (instead of being help)
-
- 28 6月, 2017 8 次提交
-
-
由 bors 提交于
Reuse the mem::swap optimizations to speed up slice::rotate This is most helpful for compound types where LLVM didn't vectorize the loop. Highlight: bench slice::rotate_medium_by727_strings gets 38% faster. Exposes the swapping logic from PR https://github.com/rust-lang/rust/pull/40454 as `pub unsafe fn ptr::swap_nonoverlapping` under library feature `swap_nonoverlapping` https://github.com/rust-lang/rust/issues/42818. (The new method seemed plausible, and was the simplest way to share the logic. I'm not attached to it, though, so let me know if a different way would be better.)
-
由 bors 提交于
1.19 stabilization r? @alexcrichton
-
由 Ariel Ben-Yehuda 提交于
The move gathering code is sensitive to type-equality - that is rather un-robust and I plan to fix it eventually, but that's a more invasive change. And we want to fix the visitor anyway. Fixes #42903.
-
由 bors 提交于
deriv(Hash) for single-variant enum should not hash discriminant Fixes #39137
-
由 bors 提交于
Fix NaN handling in is_sign_negative/positive This would be my proposed fix for the #42425 provided we decide it is indeed a problem. Note this would technically be a breaking change to a stable API. We might want to consider deprecating these methods and adding new ones.
-
由 bors 提交于
Don't drag function signatures along function item types. This PR separates the signature of a function from the "function item type" (`TyFnDef`), leaving only the `DefId` and parameter `Substs`, making them even more like (captureless) closure types. The motivation for this change is reducing typesystem complexity, and its consequences: * operating on the signature instead of just the parameters was less efficient * specifically, signatures can easily add several levels of depth on top of the parameter types * and the signatured were always substituted and normalized, so typically even more complex * it was *the only* type that was *both* nominal (identity) and structural (signature) * harder to model in Chalk than either a purely nominal or structural type * subtyping worked on the signature but parameters were always invariant * call type-checking was transforming signatures but keeping the nominal half intact * the signature could therefore get out of sync during type inference in several ways That last point comes with a `[breaking-change]`, because functions with `'static` in their return types will now *not* be as usable as if they were using lifetime parameters instead: ```rust // Will cause lifetime mismatch in main after this PR. fn bar() -> &'static str { "bar" } // Will continue to work fine, as every use can choose its own lifetime. fn bar<'a>() -> &'a str { "bar" } fn main() { let s = String::from("foo"); Some(&s[..]).unwrap_or_else(bar); } ``` r? @nikomatsakis
-
由 Esteban Küber 提交于
- Fix typo - Add docstring - Remove spurious test output file
-
- 27 6月, 2017 13 次提交
-
-
由 Eduard-Mihai Burtescu 提交于
-
由 Eduard-Mihai Burtescu 提交于
-
由 Eduard-Mihai Burtescu 提交于
-
由 Eduard-Mihai Burtescu 提交于
-
由 bors 提交于
Rollup of 5 pull requests - Successful merges: #42519, #42871, #42874, #42905, #42917 - Failed merges:
-
由 Corey Farwell 提交于
compiletest: show details why GDB failed to execute. Help finding reasons of spurious errors due to GDB failing to run (#42693).
-
由 Corey Farwell 提交于
Reword OsStr docs to clarify that utf8 may contain nulls The use of the word "but" in the OsStr docs implies (at least to me) that valid UTF-8 does not contain null bytes. Using "which" instead makes it clear that valid UTF-8 may contain null bytes.
-
由 Corey Farwell 提交于
only set "overruled by outer forbid" once for lint groups, by group name Previously, conflicting forbid/allow attributes for a lint group would result in a separate "allow(L) overruled by outer forbid(L)" error for every lint L in the group. This was needlessly and annoyingly verbose; we prefer to just have one error pointing out the conflicting attributes. (Also, while we're touching context.rs, clean up some unused arguments.) Resolves #42873.
-
由 Corey Farwell 提交于
change binding name of for loop lowering to appease clippy With the latest change to for loop lowering (#42634), a `_next` binding was introduced. Unfortunately, this [disturbs](https://github.com/Manishearth/rust-clippy/issues/1846) clippy's `used_underscore_binding` lint. This commit just renames the binding to `__next` so clippy will be happy. It should have no other effect.
-
由 Corey Farwell 提交于
Create more error codes Fixes #31174. Part of #42229. cc @Susurrus
-
由 bors 提交于
Update Cargo Haven't run extensive tests locally (not really sure what to test) but this primarily pulls in minor changes: https://github.com/rust-lang/cargo/pull/4215, https://github.com/rust-lang/cargo/pull/4209, and https://github.com/rust-lang/cargo/pull/4218. The last one fixes the flaky cargo test by ignoring it, which should unblock https://github.com/rust-lang/rust/pull/42745 -- that's beta nominated. r? @alexcrichton
-
由 kennytm 提交于
-
由 Mark Simulacrum 提交于
-
- 26 6月, 2017 3 次提交
-
-
由 bors 提交于
rustdoc: Don't ICE on `use *;` Fixes #42875
-
由 Casey Rodarmor 提交于
-
由 bors 提交于
rustdoc: Fix a few issues with associated consts * Make sure private consts are stripped. * Don't show a code block for the value if there is none. * Make sure default values are shown in impls. * Make sure docs from the trait are used if the impl has no docs.
-
- 25 6月, 2017 13 次提交
-
-
由 Guillaume Gomez 提交于
-
由 Esteban Küber 提交于
-
由 Steven Fackler 提交于
Move it and Bound to core::ops while we're at it. Closes #30877
-
由 Steven Fackler 提交于
Closes #21507
-
由 Steven Fackler 提交于
Closes #40421
-
由 Steven Fackler 提交于
Closes #40893
-
由 Steven Fackler 提交于
Closes #38526
-
由 bors 提交于
Make wasm32 buildbot test LLVM backend This adds the experimental targets option to configure so it can be used by the builders and changes the wasm32 Dockerfile accordingly. Instead of using LLVM from the emsdk, the builder's emscripten tools now uses the Rust in-tree LLVM, since this is the one built with wasm support.
-
由 Guillaume Gomez 提交于
-
由 Guillaume Gomez 提交于
-
由 Guillaume Gomez 提交于
-
由 Guillaume Gomez 提交于
-
由 Guillaume Gomez 提交于
-