Skip to content

Rollup of 6 pull requests - #41382

Closed
frewsxcv wants to merge 23 commits into
rust-lang:masterfrom
frewsxcv:rollup
Closed

Rollup of 6 pull requests#41382
frewsxcv wants to merge 23 commits into
rust-lang:masterfrom
frewsxcv:rollup

Conversation

eddyband others added 23 commits April 15, 2017 23:51
Part of rust-lang#29368.
* added missing links
* updated method summaries to use 3rd person style
* added missing periods in `Component`'s variant summaries
* use standard iterator boilerplate in `Components`' and `Iter`'s docs
* added example to `Iter::as_path`, adapted from `Components::as_path`'s
example
* consolidated examples for `Path::file_name`
* some other small fixes
Part of rust-lang#29368.
* Added a new summary paragraph about std::path's parsing facilities
* Slightly exanded `Component`'s docs
* removed the now redundant section on component types from the module docs
* moved the section on path normalization during parsing to the docs on
`Path::components`
* Clarified difference between `Prefix` and `PrefixComponent` in their
respecive summary sentences
Part of rust-lang#29368.
* Added explanation for why the struct exists
* Added link to where it is created
* Added example
* Closed an unclosed paren
* seperator -> separator
* deperator -> separator
Previously the `cargotest` suite would run some arbitrary revision of Cargo's
test suite, but now that we're bundling it in tree we should be running the
Cargo submodule's test suite instead.
There was a serious ARM codegen bug in LLVM that was fixed by rust-lang#40779,
also backported to beta. This updates stage0 to 1.17.0-beta.3 to pick
up that change, so ARM can bootstrap natively again.
Fixesrust-lang#41291
cc @arielb1
Move E0101 and E0102 logic into new E0282 mechanism rust-lang#40013
Hello there!
Previously, me and @nikomatsakis worked on error messages of uninferred locals. (rust-lang#38812)
This aims to build up on that by moving certain type checks from `writeback`.
With this, `E0101` and `E0102` errors are getting obsoleted and no longer thrown.
They're replaced with customized versions of `E0282`s instead.
```rust
error[E0282]: type annotations needed
--> test.rs:2:14
|
2 | let x = |_| {};
| ^ consider giving this closure parameter a type
error: aborting due to previous error
```
```rust
error[E0282]: type annotations needed
--> test.rs:2:9
|
2 | let x = [];
| ^
| |
| consider giving `x` a type
| cannot infer type for `[_; 0]`
error: aborting due to previous error
```
- I think we need to change our way of type name resolving in relevant places, because that `[_; 0]` looks horrible IMHO.
- I'm not terribly happy with the note ordering of errors. So please do point to code that might help me accomplish this.
Tests of `E0101` and `E0102` are getting converted from `compile-fail` to `ui` tests.
Please help me with documentation update. There are some confusing places that needed an update but I'm not sure if I did the right ones.
Please do comment on messages, layouts and other details.
Huge thanks goes to @nikomatsakis for being a patient and humble mentor along this long journey. 🍻
…=arielb1
Ban registering obligations during InferCtxt snapshots.
Back in rust-lang#33852, a flag was added to `InferCtxt` to prevent rolling back a snapshot if obligations were added to some `FulfillmentContext` during the snapshot, to prevent leaking fresh inference variables (created during that snapshot, so their indices would get reused) in obligations, which could ICE or worse.
But that isn't enough in the long run, as type-checking ends up relying on success implying that eager side-effects are fine, and while stray obligations *do* get caught nowadays, those errors prevent, e.g. the speculative coercions from rust-lang#37658, which *have to* be rolled back *even* if they succeed.
We can't just allow those obligations to stay around though, because we end up, again, in ICEs or worse.
Instead, this PR modifies `lookup_method_in_trait_adjusted` to return `InferOk` containing the obligations that `Autoderef::finalize_as_infer_ok` can propagate to deref coercions.
As there shouldn't be *anything* left that registers obligations during snapshots, it's completely banned.
r? @nikomatsakis@arielb1
Improve std::path docs
Fixesrust-lang#29368.
This PR contains a pretty significant redistribution of some of the module docs to more appropriate places, as well as general expansion, clarification, and additional examples.
For more details, see the commit descriptions.
r? @steveklabnik
Run tests for the cargo submodule in tree
Previously the `cargotest` suite would run some arbitrary revision of Cargo's
test suite, but now that we're bundling it in tree we should be running the
Cargo submodule's test suite instead.
Bump stage0 to fix ARM LLVM
There was a serious ARM codegen bug in LLVM that was fixed by rust-lang#40779,
also backported to beta. This updates stage0 to 1.17.0-beta.3 to pick
up that change, so ARM can bootstrap natively again.
Fixesrust-lang#41291
cc @arielb1
update mdbook
Ship some more improvements.
r? @rust-lang/docs
@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @eddyb (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@frewsxcv

Copy link
Copy Markdown
ContributorAuthor

@bors r+ p=10

@bors

bors commented Apr 18, 2017

Copy link
Copy Markdown
Collaborator

📌 Commit 8a5015a has been approved by frewsxcv

@CentrilCentril added the rollup A PR which is a rollup label Oct 24, 2019
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rollupA PR which is a rollup

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@frewsxcv@rust-highfive@bors@eddyb@Centril@alexcrichton@steveklabnik@cuviper