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

Rollup of 10 pull requests #69914

Merged
merged 38 commits into from
Mar 11, 2020
Merged

Rollup of 10 pull requests #69914

merged 38 commits into from
Mar 11, 2020

Conversation

Centril
Copy link
Contributor

@Centril Centril commented Mar 11, 2020

Successful merges:

Failed merges:

r? @ghost

tspiteri and others added 30 commits February 22, 2020 14:03
All of these functions can be implemented simply and naturally as
const functions, e.g. u32::from_le_bytes can be implemented as

    (bytes[0] as u32)
        | (bytes[1] as u32) << 8
        | (bytes[2] as u32) << 16
        | (bytes[3] as u32) << 24

So stabilizing the constness will not expose that internally they are
implemented using transmute which is not const in stable.
Small composite types like `Point { x: i32, y: i32}` are plain
old data and we should encourage users to derive `Copy` on them.

This changes the semantics of the edited examples slightly: instead
of consuming the operands during addition, it will copy them. This
is desired behaviour.

Co-Authored-By: Jake Goulding <shepmaster@mac.com>
Move anon-params tests to ui/anon-params.
mem::zeroed/uninit: panic on types that do not permit zero-initialization

r? @eddyb @oli-obk

Cc rust-lang#62825

Also see [this summary comment](rust-lang#66059 (comment))
…i-obk

Stabilize const for integer {to,from}_{be,le,ne}_bytes methods

All of these functions can be implemented simply and naturally as const functions, e.g. `u32::from_le_bytes` can be implemented as
```rust
(bytes[0] as u32)
    | (bytes[1] as u32) << 8
    | (bytes[2] as u32) << 16
    | (bytes[3] as u32) << 24
```
So stabilizing the constness will not expose that internally they are implemented using transmute which is not const in stable.
…, r=nikomatsakis

Use TypeRelating for instantiating query responses

`eq` can add constraints to `RegionConstraintData`, which isn't allowed during borrow checking outside of a `CustomTypeOp`. Use `TypeRelating` instead to always push constraints to the obligations list.

closes rust-lang#69490
…, r=KodrAus

Implement nth, last, and count for iter::Copied

Implement nth, last and count for iter::Copied.
…ntation, r=shepmaster

Make Point `Copy` in arithmetic documentation

Small composite types like `Point { x: i32, y: i32}` are plain
old data and we should encourage users to derive `Copy` on them.

This changes the semantics of the edited examples slightly: instead
of consuming the operands during addition, it will copy them. This
is desired behaviour.
make `mem::discriminant` const

implements rust-lang#69821, which could be used as a tracking issue for `const_discriminant`.

Should this be added to the meta tracking issue rust-lang#57563?
@Lokathor
Exhaustiveness checking, `Matrix::push`: recursively expand or-patterns

> There's an implicit invariant that there should be no or-patterns directly in the first column of the matrix, but this invariant is broken exactly when an or-pattern has a child that is itself an or-pattern.

Here we preserve this broken invariant by recursively expanding `PatKind::Or`s in `Matrix::push`.
Fixes rust-lang#69875.

r? @varkor
cc @Nadrieril
cc rust-lang#54883
parse: Tweak the function parameter edition check

Follow-up to rust-lang#69801.

Edition of a code fragment is inferred from "the place where the code is written".
For individual tokens like edition-specific keywords it may be the span of the token itself ("uninterpolated" span), but for larger code fragments it's probably not, in the test example the trait method is obviously written in "2015 edition code".

r? @Centril
@Centril
Copy link
Contributor Author

Centril commented Mar 11, 2020

@bors r+ p=10 rollup=never

@bors
Copy link
Contributor

bors commented Mar 11, 2020

📌 Commit 6a8683f has been approved by Centril

@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 11, 2020
@Centril Centril added the rollup A PR which is a rollup label Mar 11, 2020
@bors
Copy link
Contributor

bors commented Mar 11, 2020

⌛ Testing commit 6a8683f with merge 303d8af...

@bors
Copy link
Contributor

bors commented Mar 11, 2020

☀️ Test successful - checks-azure
Approved by: Centril
Pushing 303d8af to master...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. 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.

ICE: index out of bounds with const generics