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 11 pull requests #81240

Merged
merged 29 commits into from
Jan 21, 2021
Merged

Rollup of 11 pull requests #81240

merged 29 commits into from
Jan 21, 2021

Conversation

JohnTitor
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

camelid and others added 29 commits December 18, 2020 15:05
The heading style for `std::prelude` is to be consistent with the
headings for `std` and `core`: `# The Rust Standard Library` and
`# The Rust Core Library`, respectively.
As it was suggested in rust-lang#81037 `SpecFromIter` is not
in the scope and therefore (even it should fail),
we get a warning when we try do document private
intems in `rust/library/alloc/`.

This fixes rust-lang#81037 by adding the trait in the scope
and also adding an `allow(unused_imports)` flag so that
the compiler does not complain, Since the trait is not used
per se in the code, it's just needed to have properly documented
docs.
It's called at the same time and in the same place as `after_krate`, so
they can be combined.
formating -> formatting
Visualize vector while differentiating between stack and heap.

Inspired by cheats.rs, as this is probably the first place beginner go,
they could understand stack and heap, length and capacity with this. Not
sure if adding this means we should add to other places too.

Superseeds rust-lang#76066
Update the sample code to not create an insecure temporary file.
Co-authored-by: Mara Bos <m-ou.se@m-ou.se>
Add Vec visualization to understand capacity

Visualize vector while differentiating between stack and heap.

Inspired by cheats.rs, as this is probably the first place beginner go,
they could understand stack and heap, length and capacity with this. Not
sure if adding this means we should add to other places too.

Superseeds rust-lang#76066

r? `@m-ou-se`

cc `@the8472` I put back the order of the fields as it feels weird, the note already explains that the order of fields is not guaranteed
…ct, r=steveklabnik

Use consistent punctuation for 'Prelude contents' docs
…acrum

Add regression test for mutual recursion in obligation forest

Add regression test for rust-lang#75860 with a slightly smaller example.
I was looking at what caused the issue and was surprised when it errors out on nightly, so I just added a regression test which should effectively close the issue, altho it would be nice to find the fix for reference.

Also I found that 80066 is not fixed by whatever fixed 75860.
…mar, r=m-ou-se

Improve grammar in documentation of format strings

The docs previously were
* using some weird `<` and `>` around some nonterminals
  * _correct me if these **did** have any meaning_
* using of a (not explicitly defined) `text` nonterminal that didn’t explicitly disallow productions containing `'{'` or `'}'`
* incorrect in not allowing for `x?` and `X?` productions of `type`
* unnecessarily ambiguous, both
  * allowing `type` to be `''`, and
  * using an optional `[type]`
* using inconsistent underscore/hyphenation style between `format_string` and `format_spec` vs `maybe-format`

_Rendered:_
![Screenshot_20210101_230901](https://user-images.githubusercontent.com/3986214/103447038-69d7a180-4c86-11eb-8fa0-0a6160a7ff7a.png)
_(current docs: https://doc.rust-lang.org/nightly/std/fmt/#syntax)_

```@rustbot``` modify labels: T-doc
…ebank

Improve unknown external crate error

This improves error messages when unknown items in the crate root are encountered.

Fixes rust-lang#63799

r? ```@estebank```
Visit only terminators when removing landing pads

No functional changes intended
…n514

Fix broken links with `--document-private-items` in the standard library

As it was suggested in rust-lang#81037 `SpecFromIter` is not
in the scope and therefore we get a warning when we try to
do document private intems in `rust/library/alloc/`.

This addresses rust-lang#81037 by adding the trait in the scope as ```@jyn514```
suggested and also adding an `allow(unused_imports)` flag so that
the compiler does not complain, Since the trait is not used
per se in the code, it's just needed to have properly documented
docs.
Remove unnecessary `after_run` function

It's called at the same time and in the same place as `after_krate`, so
they can be combined.
Fix ICE in mir when evaluating SizeOf on unsized type

Not quite ready yet. This tries to fix rust-lang#80742 as discussed on [Zulip topic][1],
by using `delay_span_bug`.

I don't understand what `delay_span_bug` does. It seems like my error message
is never used. With this patch, in this program:

```rust
#![allow(incomplete_features)]
#![feature(const_evaluatable_checked)]
#![feature(const_generics)]

use std::fmt::Debug;
use std::marker::PhantomData;
use std::mem::size_of;

struct Inline<T>
where
    [u8; size_of::<T>() + 1]: ,
{
    _phantom: PhantomData<T>,
    buf: [u8; size_of::<T>() + 1],
}

impl<T> Inline<T>
where
    [u8; size_of::<T>() + 1]: ,
{
    pub fn new(val: T) -> Inline<T> {
        todo!()
    }
}

fn main() {
    let dst = Inline::<dyn Debug>::new(0); // line 27
}
```

these errors are printed, both for line 27 (annotated line above):

- "no function or associated item named `new` found for struct `Inline<dyn
  Debug>` in the current scope"
- "the size for values of type `dyn Debug` cannot be known at compilation time"

Second error makes sense, but I'm not sure about the first one and why it's
even printed.

Finally, I'm not sure about the span passing in `const_eval`.

[1]: https://rust-lang.zulipchat.com/#narrow/stream/269128-miri/topic/Help.20fixing.20.2380742
Fix typo in counters.rs

formating -> formatting
Document security implications of std::env::temp_dir

Update the sample code to not create an insecure temporary file.
@rustbot rustbot added the rollup A PR which is a rollup label Jan 21, 2021
@JohnTitor
Copy link
Member Author

@bors r+ p=11 rollup=never

@bors
Copy link
Contributor

bors commented Jan 21, 2021

📌 Commit d6c7a79 has been approved by JohnTitor

@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 Jan 21, 2021
@bors
Copy link
Contributor

bors commented Jan 21, 2021

⌛ Testing commit d6c7a79 with merge a243ad2...

@bors
Copy link
Contributor

bors commented Jan 21, 2021

☀️ Test successful - checks-actions
Approved by: JohnTitor
Pushing a243ad2 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jan 21, 2021
@bors bors merged commit a243ad2 into rust-lang:master Jan 21, 2021
@bors
Copy link
Contributor

bors commented Jan 21, 2021

☀️ Test successful - checks-actions
Approved by: JohnTitor
Pushing a243ad2 to master...

@rylev
Copy link
Member

rylev commented Jan 26, 2021

There were perf regressions in this rollup. The only PR that seems like a likely culprit is #81178.

@rust-timer make-pr-for cd0c54a

@tmiasko
Copy link
Contributor

tmiasko commented Jan 29, 2021

The code changed in #81178 is responsible from removing unwind edges for -Cpanic=abort strategy, which as far as I can see executes only in webrender-opt benchmark. Additionally the keccak & ctfe-stress-4 results returned to the previous levels immediately after the next merge commit.

Perf results:

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.