Skip to content

Conversation

SimonSapin and others added 30 commits July 22, 2017 20:37
… to protect against UB in the unlikely case that `idx + 1` overflows.
On SPARC, optimization fuel ends up emitting incorrect load and store
instructions for the transmute() call in blake2b_compress().  If we
force Blake2bCtx to be repr(C), the problem disappears.

Fixes rust-lang#43346
Point at the correct path segment on a import statement where a module
doesn't exist.

New output:

```rust
error[E0432]: unresolved import `std::bar`
 --> <anon>:1:10
  |
1 | use std::bar::{foo1, foo2};
  |          ^^^ Could not find `bar` in `std`
```

instead of:

```rust
error[E0432]: unresolved import `std::bar::foo1`
 --> <anon>:1:16
  |
1 | use std::bar::{foo1, foo2};
  |                ^^^^ Could not find `bar` in `std`

error[E0432]: unresolved import `std::bar::foo2`
 --> <anon>:1:22
  |
1 | use std::bar::{foo1, foo2};
  |                      ^^^^ Could not find `bar` in `std`
```
Make the "main" constructors of NonZero/Shared/Unique return Option

Per discussion in rust-lang#27730 (comment).

This is a breaking change to unstable APIs.

The old behavior is still available under the name `new_unchecked`. Note that only that one can be `const fn`, since `if` is currently not allowed in constant contexts.

In the case of `NonZero` this requires adding a new `is_zero` method to the `Zeroable` trait. I mildly dislike this, but it’s not much worse than having a `Zeroable` trait in the first place. `Zeroable` and `NonZero` are both unstable, this can be reworked later.
Point at path segment on module not found

Point at the correct path segment on a import statement where a module
doesn't exist.

New output:

```rust
error[E0432]: unresolved import `std::bar`
 --> <anon>:1:10
  |
1 | use std::bar::{foo1, foo2};
  |          ^^^ Could not find `bar` in `std`
```

instead of:

```rust
error[E0432]: unresolved import `std::bar::foo1`
 --> <anon>:1:16
  |
1 | use std::bar::{foo1, foo2};
  |                ^^^^ Could not find `bar` in `std`

error[E0432]: unresolved import `std::bar::foo2`
 --> <anon>:1:22
  |
1 | use std::bar::{foo1, foo2};
  |                      ^^^^ Could not find `bar` in `std`
```

Fix rust-lang#43040.
…=steveklabnik

add a note to Vec's Extend<&T> impl about its slice specialization

From the regular documentation view, it's not at all apparent that [this specialization](https://github.com/rust-lang/rust/blob/5669c9988f50788b5ab5dee2d4538519d4e5663d/src/liballoc/vec.rs#L1879-L1891) exists for `slice::Iter`. This adds a documentation blurb to the Extend impl itself to note that this optimization exists.
…chton

std::thread::spawn: Fix grammar in documentation

Closes rust-lang#43435.
Fix printing regions with -Z verbose

When dumping MIR with `-Z verbose`, it would print regions on types, but not in the code. It seems the Rvalue printing code tried to be smart and guessed when the `Display` for `Region` would not possibly print anything.

This PR makes it no longer be smart, and just always use the `Display` like all the other code (e.g. printing types) does.
DNS functions are in libresolv on Solaris, just like on MacOS
Fix the spans of catch blocks to include the `do`
Add missing impl and tests for int to int TryFrom impls

These were missing from rust-lang#43248.

r? @nagisa
Constrain the layout of Blake2bCtx for proper SPARC compilation

On SPARC, optimization fuel ends up emitting incorrect load and store
instructions for the transmute() call in blake2b_compress().  If we
force Blake2bCtx to be repr(C), the problem disappears.

Fixes rust-lang#43346
@rust-highfive
Copy link
Contributor

r? @BurntSushi

(rust_highfive has picked a reviewer for you, use r? to override)

@Mark-Simulacrum
Copy link
Member Author

@bors r+ p=10

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

📌 Commit 959ebd6 has been approved by Mark-Simulacrum

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

⌛ Testing commit 959ebd6 with merge e75dfd129c849aa98926729c004f1ec51ae4781b...

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

💔 Test failed - status-appveyor

@kennytm
Copy link
Member

kennytm commented Jul 26, 2017

x86_64-pc-windows-msvc stage2-rls test failed, likely #43453, spurious.

     Running build\x86_64-pc-windows-msvc\stage2-tools\x86_64-pc-windows-msvc\release\deps\rls-63ddc6f60085b731.exe
running 14 tests
test build::cargo::test::test_dedup_flags ... ok
test server::test::server_message_get_method_name ... ok
test server::test::server_message_to_str ... ok
error[E0422]: cannot find struct, variant or union type `LibCfgTestStruct` in module `bin_lib_no_cfg_test`
 --> test_data\bin_lib_no_cfg_test\src\main.rs:5:37
  |
5 |     let test = bin_lib_no_cfg_test::LibCfgTestStruct { };
  |                                     ^^^^^^^^^^^^^^^^ not found in `bin_lib_no_cfg_test`
test test::test_bin_lib_project ... ok
test test::test_borrow_error ... ok
test test::test_completion ... ok
test test::test_find_all_refs ... ok
test test::test_find_all_refs_no_cfg_test ... ok
test test::test_multiple_binaries ... ok
test test::test_parse_error_on_malformed_input ... ok
test test::test_reformat ... ok
test test::test_reformat_with_range ... ok
test test::test_simple_workspace ... ok
test test::test_bin_lib_project_no_cfg_test ... FAILED
failures:
---- test::test_bin_lib_project_no_cfg_test stdout ----
	thread 'test::test_bin_lib_project_no_cfg_test' panicked at 'Hit timeout', src\tools\rls\src\test\harness.rs:142:12
failures:
    test::test_bin_lib_project_no_cfg_test
test result: FAILED. 13 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
error: test failed, to rerun pass '--bin rls'
command did not execute successfully: "C:\\projects\\rust\\build\\x86_64-pc-windows-msvc\\stage0/bin\\cargo.exe" "test" "-j" "2" "--target" "x86_64-pc-windows-msvc" "--release" "--locked" "--color" "always" "--manifest-path" "C:\\projects\\rust\\src/tools/rls/Cargo.toml"
expected success, got: exit code: 101

@Mark-Simulacrum
Copy link
Member Author

@bors retry - RLS tests, cc #43453

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

⌛ Testing commit 959ebd6 with merge 441acb35815d545c21c48b89064f8ed2fbf06001...

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

💔 Test failed - status-appveyor

@Mark-Simulacrum
Copy link
Member Author

@bors retry - RLS failure (again, despite attempted fix) - #43453

[01:46:09] test build::cargo::test::test_dedup_flags ... ok
[01:46:09] test server::test::server_message_get_method_name ... ok
[01:46:09] test server::test::server_message_to_str ... ok
[01:46:10] error[E0422]: cannot find struct, variant or union type `LibCfgTestStruct` in module `bin_lib_no_cfg_test`
[01:46:10]  --> test_data\bin_lib_no_cfg_test\src\main.rs:5:37
[01:46:10]   |
[01:46:10] 5 |     let test = bin_lib_no_cfg_test::LibCfgTestStruct { };
[01:46:10]   |                                     ^^^^^^^^^^^^^^^^ not found in `bin_lib_no_cfg_test`
[01:46:10]
[01:46:11] test test::test_bin_lib_project ... ok
[01:46:11] test test::test_borrow_error ... ok
[01:46:12] test test::test_completion ... ok
[01:46:12] test test::test_find_all_refs ... ok
[01:46:13] test test::test_find_all_refs_no_cfg_test ... ok
[01:46:13] test test::test_multiple_binaries ... ok
[01:46:13] test test::test_parse_error_on_malformed_input ... ok
[01:46:14] test test::test_reformat ... ok
[01:46:14] test test::test_reformat_with_range ... ok
[01:46:15] test test::test_simple_workspace ... ok
[01:46:19] test test::test_bin_lib_project_no_cfg_test ... FAILED
[01:46:19]
[01:46:19] failures:
[01:46:19]
[01:46:19] ---- test::test_bin_lib_project_no_cfg_test stdout ----
[01:46:19]  thread 'test::test_bin_lib_project_no_cfg_test' panicked at 'Hit timeout', src\tools\rls\src\test\harness.rs:142:12

cc @nrc

@bors
Copy link
Collaborator

bors commented Jul 26, 2017

⌛ Testing commit 959ebd6 with merge 599be0d...

bors added a commit that referenced this pull request Jul 26, 2017
Rollup of 10 pull requests

- Successful merges: #42959, #43447, #43455, #43456, #43458, #43462, #43463, #43465, #43471, #43480
- Failed merges:
@bors
Copy link
Collaborator

bors commented Jul 26, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: Mark-Simulacrum
Pushing 599be0d to master...

@bors bors merged commit 959ebd6 into rust-lang:master Jul 26, 2017
@Centril Centril added the rollup A PR which is a rollup label Oct 2, 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
Projects
None yet
Development

Successfully merging this pull request may close these issues.