Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Another rollup #2 #48659

Closed
wants to merge 20 commits into from
Closed

Another rollup #2 #48659

wants to merge 20 commits into from

Conversation

Manishearth
Copy link
Member

No description provided.

sanxiyn and others added 13 commits February 23, 2018 21:48
Since compiling the bootstrap command doesn't require any submodules,
we can skip updating submodules when a --help command is passed in.
On my machine, this saves 1 minute if the submodules are already
downloaded, and 10 minutes if run on a clean repo.

This commit also adds a message before compiling/downloading anything
when a --help command is passed in, to tell the user WHY --help
takes so long to complete. It also points the user to the bootstrap
README.md for faster help.

Finally, this fixes one warning message that still referenced using
make instead of x.py, even though x.py is now the standard way of
building rust.
When finding:

```rust
match &Some(3) {
    &None => 1
    &Some(2) => { 3 }
    _ => 2
}
```

provide the following diagnostic:

```
error: expected one of `,`, `.`, `?`, `}`, or an operator, found `=>`
 --> $DIR/missing-comma-in-match.rs:15:18
  |
X |         &None => 1
  |               --  - help: missing comma
  |               |
  |               while parsing the match arm starting here
X |         &Some(2) => { 3 }
  |                  ^^ expected one of `,`, `.`, `?`, `}`, or an operator here
```
When unnecessarily using a fat arrow after an if condition, suggest the
removal of it.

When finding an if statement with no block, point at the `if` keyword to
provide more context.
The build might otherwise break due to mixing MinGW object files from
rust-std and the local MinGW which might be newer/older than the version
used to build rust-std.

Fixes rust-lang#48272
Currently rustc isn't always the best at producing deterministic builds of a
crate when the source directory of a crate is changed. This is happening due to
what appears two different sources:

* First the `-L` paths passed to rustc are hashed into the crate hash. These
  paths through Cargo are typically absolute paths that can vary if the build
  directory changes.

* Next the paths passed to `--extern` are also hashed which like `-L` can change
  if the build directory changes.

This commit fixes these two sources of nondeterminism by ensuring that avoiding
tracking the hashes of these arguments on the command line. For `-L` paths
they're either related to loading crates (whose hashes are tracked elsewhere) or
native librarise used in the linking phase (which isn't incremental). The
`--extern` paths are similar in that they're related to crate resolution which
is already tracked independently of the command line arguments.

Closes rust-lang#48019
It was an existing solution to tell the user why a --help command
takes a long time to process. However, it would only print if the
stage0 rust compiler needed to be downloaded, it came after
update_submodules (which took a long time), and it was immediately
followed by download messages and loading bars, meaning users could
easily gloss over the message.

This commit also moves the help message out of main(), and instead
puts it at the top of bootstrap(). main() is intended to be minimal,
only handling error messages.
@Manishearth
Copy link
Member Author

@bors r+ p=10

let this run overnight

I am not supervising this, feel free to fix or close if it fails. This one contains riskier PRs which I avoided taking in previous rollups.

@bors
Copy link
Contributor

bors commented Mar 2, 2018

📌 Commit ac275ee has been approved by Manishearth

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Mar 2, 2018
@kennytm
Copy link
Member

kennytm commented Mar 2, 2018

@bors r-

CI failed. Caused by #48527.

[00:05:51]    Compiling rustc_errors v0.0.0 (file:///checkout/src/librustc_errors)
[00:06:11] error[E0599]: no method named `parse_pat_tuple_elements` found for type `&mut parse::parser::Parser<'a>` in the current scope
[00:06:11]     --> libsyntax/parse/parser.rs:3783:40
[00:06:11]      |
[00:06:11] 3783 |             if let Err(mut err) = self.parse_pat_tuple_elements(false) {
[00:06:11]      |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[00:06:11]      |
[00:06:11]      = help: did you mean `parse_pat_vec_elements`?
[00:06:11] 
[00:06:13] error: aborting due to previous error
[00:06:13] 
[00:06:13] error: Could not compile `syntax`.

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Mar 2, 2018
@Manishearth
Copy link
Member Author

@bors r+

PR removed

@bors
Copy link
Contributor

bors commented Mar 2, 2018

📌 Commit ac275ee has been approved by Manishearth

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Mar 2, 2018
@Manishearth
Copy link
Member Author

@bors r+

@bors
Copy link
Contributor

bors commented Mar 2, 2018

📌 Commit 2f37740 has been approved by Manishearth

@bors
Copy link
Contributor

bors commented Mar 2, 2018

⌛ Testing commit 2f377409bbd5c54a34f3b5c2700426131144b8d3 with merge ef3669827e83ab5b2bbb88e9f05e6631d216fe53...

@bors
Copy link
Contributor

bors commented Mar 2, 2018

💔 Test failed - status-travis

@bors bors removed the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Mar 2, 2018
@bors bors added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 2, 2018
@kennytm
Copy link
Member

kennytm commented Mar 2, 2018

@bors r-

Caused by #48513 (comment).

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 2, 2018
alexcrichton and others added 6 commits March 2, 2018 07:05
This commit imports the `stdsimd` crate into the standard library,
creating an `arch` and `simd` module inside of both libcore and libstd.
Both of these modules are **unstable** and will continue to be so until
RFC 2335 is stabilized.

As a brief recap, the modules are organized as so:

* `arch` contains all current architectures with intrinsics, for example
  `std::arch::x86`, `std::arch::x86_64`, `std::arch::arm`, etc. These
  modules contain all of the intrinsics defined for the platform, like
  `_mm_set1_epi8`.
* In the standard library, the `arch` module also exports a
  `is_target_feature_detected` macro which performs runtime detection to
  determine whether a target feature is available at runtime.
* The `simd` module contains experimental versions of strongly-typed
  lane-aware SIMD primitives, to be fully fleshed out in a future RFC.

The main purpose of this commit is to start pulling in all these
intrinsics and such into the standard library on nightly and allow
testing and such. This'll help allow users to easily kick the tires and
see if intrinsics work as well as allow us to test out all the
infrastructure for moving the intrinsics into the standard library.
@Manishearth
Copy link
Member Author

@bors r+

@bors
Copy link
Contributor

bors commented Mar 2, 2018

📌 Commit 2f37740 has been approved by Manishearth

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Mar 2, 2018
@Manishearth Manishearth closed this Mar 2, 2018
@Manishearth Manishearth reopened this Mar 2, 2018
@Manishearth
Copy link
Member Author

@bors r+ p=10

@bors
Copy link
Contributor

bors commented Mar 2, 2018

📌 Commit bc90898 has been approved by Manishearth

@Manishearth
Copy link
Member Author

bors is confused wrt mergeability

@Manishearth Manishearth closed this Mar 2, 2018
@Centril Centril added the rollup A PR which is a rollup label Oct 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants