- 05 1月, 2019 8 次提交
-
-
由 bors 提交于
NLL: Add closure cannot be moved note. Fixes #57098. This PR extends existing logic for checking whether a closure that is `FnOnce` and therefore moves variables that it captures from the environment has already been invoked when being invoked again. Now, this logic will also check whether the closure is being moved after previously being moved or invoked and add an appropriate note. r? @pnkfelix
-
由 bors 提交于
Add support for trait-objects without a principal The hard-error version of #56481 - should be merged after we do something about the `traitobject` crate. Fixes #33140. Fixes #57057. r? @nikomatsakis
-
由 bors 提交于
Implement the Re-rebalance coherence RFC This is the first time I touch anything in the compiler so just tell me if I got something wrong. Big thanks to @sgrif for the pointers where to look for those things. cc #55437
-
由 bors 提交于
Link to rustc guide As proposed in https://github.com/rust-lang-nursery/rustc-guide/issues/239
-
由 Ariel Ben-Yehuda 提交于
Fixes #57162.
-
由 Ariel Ben-Yehuda 提交于
-
由 bors 提交于
make `panictry!` private to libsyntax This commit completely removes usage of the `panictry!` macro from outside libsyntax. The macro causes parse errors to be fatal, so using it in libsyntax_ext caused parse failures *within* a syntax extension to be fatal, which is probably not intended. Furthermore, this commit adds spans to diagnostics emitted by empty extensions if they were missing, à la #56491.
-
- 04 1月, 2019 32 次提交
-
-
由 bors 提交于
Forbid recursive impl trait There is no type T, such that `T = [T; 2]`, but impl Trait could sometimes be to circumvented this. This patch makes it a hard error for an opaque type to resolve to such a "type". Before this can be merged it needs - [x] A better error message - it's good enough for now. - [x] A crater run (?) to see if this any real-world code closes #47659
-
由 Ariel Ben-Yehuda 提交于
This makes sure they are printed in a compiler-version-independent order, avoiding ui test instability.
-
由 bors 提交于
Allow to dispatch fn traits depending on number of parameters Hello, By following @EddyB's advise on issue #45510, I managed to have the snippets of code in #45510 and #18952 passing without breaking older diagnostics. EDIT: the codegen tests breakage I experienced is due to the poor quality of my laptop. If any kind reviewer has any advice, you are very welcome.
-
由 Georg Semmler 提交于
-
由 bors 提交于
Update cargo 24 commits in 0d1f1bbeabd5b43a7f3ecfa16540af8e76d5efb4..34320d212dca8cd27d06ce93c16c6151f46fcf2e 2018-12-19 14:45:14 +0000 to 2019-01-03 19:12:38 +0000 - Display environment variables for rustc commands (rust-lang/cargo#6492) - Fix a very minor race condition in `cargo fix`. (rust-lang/cargo#6515) - Add a high-level overview of how `fix` works. (rust-lang/cargo#6516) - Add dependency `registry` to `cargo metadata`. (rust-lang/cargo#6500) - Fix fingerprint calculation for patched deps. (rust-lang/cargo#6493) - serialize version directly (rust-lang/cargo#6512) - use DYLD_FALLBACK_LIBRARY_PATH for dylib_path_envvar on macOS (rust-lang/cargo#6355) - Fix error message when resolving dependencies (rust-lang/cargo#6510) - use PathBuf in cargo metadata (rust-lang/cargo#6511) - Fixed link to testsuite in CONTRIBUTING.md (rust-lang/cargo#6506) - Update display of contents of Cargo.toml (rust-lang/cargo#6501) - Update display of contents of Cargo.toml (rust-lang/cargo#6502) - Fixup cargo install's help message (rust-lang/cargo#6495) - testsuite: Require failing commands to check output. (rust-lang/cargo#6497) - Delete unnecessary 'return' (rust-lang/cargo#6496) - Fix new unused patch warning. (rust-lang/cargo#6494) - Some minor documentation changes. (rust-lang/cargo#6481) - Add `links` to `cargo metadata`. (rust-lang/cargo#6480) - Salvaged semver work (rust-lang/cargo#6476) - Warn on unused patches. (rust-lang/cargo#6470) - don't write a an incorrect rustc version to the fingerprint file (rust-lang/cargo#6473) - Rewrite `login` and registry cleanups. (rust-lang/cargo#6466) - [issue#6461] Fix cargo commands list (rust-lang/cargo#6462) - Restrict registry names to same style as package names. (rust-lang/cargo#6469)
-
由 bors 提交于
ci: Upgrade Travis to Xenial In theory we shouldn't require trusty so long as docker continues to work!
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
This reverts commit 76063963.
-
由 Ariel Ben-Yehuda 提交于
This reverts commit 6e4b2b3a.
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
-
由 Ariel Ben-Yehuda 提交于
Fixes #33140.
-
由 Ariel Ben-Yehuda 提交于
should be a pure refactoring.
-
由 Matthew Jasper 提交于
There is no type T, such that `T = [T; 2]`, we should not allow this to be circumvented by impl Trait.
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
Implement compile tests as variants of existing tests
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
uncoverd type
-
由 varkor 提交于
Co-Authored-By: Nweiznich <Georg_semmler_05@web.de>
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
-
由 Georg Semmler 提交于
This copies and adjusts the existing coherence tests to ensure that they continue to work using the new implementation.
-
由 Georg Semmler 提交于
-
由 Eric Huss 提交于
-
由 Matthew Jasper 提交于
It used to display as just `impl`
-
由 Alex Crichton 提交于
In theory we shouldn't require trusty so long as docker continues to work!
-
由 bors 提交于
Universes This PR transitions the compiler to use **universes** instead of the **leak-check**. It is marked as [WIP] for a few reasons: - The diagnostics at present are terrible =) - This changes the behavior of coherence, regressing some things that used to compile The goals of this PR at present are: - To start getting some eyes on the code - To do a crater run - To see the full travis results (due to https://github.com/rust-lang/rust/issues/52452, I am not able to run the full test suite locally anymore at present) The first few commits in the PR are changing how `evaluate` treats regions. We now track whether region comparisons occurred, reverting the "staticized" query approach that @arielb1 put in. The problem with "staticized" queries is that it relied on the leak-check to get higher-ranked things correct, and we are removing the leak-check in this PR series, so that caused problems. You can see at the end a collection of test updates. Mostly we behave the same but with atrocious diagnostics, but there are a number of cases where we used to error and now no longer do, as well as single case where we used to **not** error but we now do (the coherence-subtyping change). (Note: it would be possible to do a version of leak-check that propagates universe information and recover the old behavior. I am reluctant to do so because I'd like to leave us room to get more precise -- e.g., I want to eventually handle things like `exists<'a> { for<'b> { if ('a: 'b) { 'a: 'b } } }` which presently the leak-check cannot cope with etc. Also because it seems more consistent to me: most folks I've talked to expect the new behavior and are surprised to learn that binding sites were so significant before when it comes to coherence. One question is, though, to what extent are people relying on this in the wild?)
-