]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoEdit cursor.prev() method docs in lexer
pierwill [Sun, 28 Jun 2020 19:32:58 +0000 (12:32 -0700)]
Edit cursor.prev() method docs in lexer

Fix missing punctuation

4 years agoAuto merge of #73830 - Manishearth:rollup-8k68ysm, r=Manishearth
bors [Sun, 28 Jun 2020 08:26:22 +0000 (08:26 +0000)]
Auto merge of #73830 - Manishearth:rollup-8k68ysm, r=Manishearth

Rollup of 10 pull requests

Successful merges:

 - #72796 (MIR sanity check: validate types on assignment)
 - #73243 (Add documentation to point to `File::open` or `OpenOptions::open` instead of `is_file` to check read/write possibility)
 - #73525 (Prepare for LLVM 11)
 - #73672 (Adds a clearer message for when the async keyword is missing from a f…)
 - #73708 (Explain move errors that occur due to method calls involving `self` (take two))
 - #73758 (improper_ctypes: fix remaining `Reveal:All`)
 - #73763 (errors: use `-Z terminal-width` in JSON emitter)
 - #73796 (replace more `DefId`s with `LocalDefId`)
 - #73797 (fix typo in self-profile.md)
 - #73809 (Add links to fs::DirEntry::metadata)

Failed merges:

r? @ghost

4 years agoRollup merge of #73809 - robyoung:docs/add-links-to-DirEntry-metadata, r=hanna-kruppe
Manish Goregaokar [Sun, 28 Jun 2020 05:30:06 +0000 (22:30 -0700)]
Rollup merge of #73809 - robyoung:docs/add-links-to-DirEntry-metadata, r=hanna-kruppe

Add links to fs::DirEntry::metadata

`fs::DirEntry::metadata` doesn't traverse symlinks. It is not immediately clear what to do if you do want to traverse symlinks. This change adds links to the two other `metadata` functions that will follow symlinks.

4 years agoRollup merge of #73797 - atetubou:patch-1, r=jonas-schievink
Manish Goregaokar [Sun, 28 Jun 2020 05:30:05 +0000 (22:30 -0700)]
Rollup merge of #73797 - atetubou:patch-1, r=jonas-schievink

fix typo in self-profile.md

4 years agoRollup merge of #73796 - lcnr:LocalDefId, r=matthewjasper
Manish Goregaokar [Sun, 28 Jun 2020 05:30:03 +0000 (22:30 -0700)]
Rollup merge of #73796 - lcnr:LocalDefId, r=matthewjasper

replace more `DefId`s with `LocalDefId`

part of https://github.com/rust-lang/rust/issues/70853

4 years agoRollup merge of #73763 - davidtwco:terminal-width-json-emitter, r=estebank
Manish Goregaokar [Sun, 28 Jun 2020 05:30:01 +0000 (22:30 -0700)]
Rollup merge of #73763 - davidtwco:terminal-width-json-emitter, r=estebank

errors: use `-Z terminal-width` in JSON emitter

This PR makes the JSON emitter use `-Z terminal-width` in the "rendered" field of the JSON output.

r? @estebank

4 years agoRollup merge of #73758 - davidtwco:issue-60855-remaining-reveal-all, r=matthewjasper
Manish Goregaokar [Sun, 28 Jun 2020 05:29:59 +0000 (22:29 -0700)]
Rollup merge of #73758 - davidtwco:issue-60855-remaining-reveal-all, r=matthewjasper

improper_ctypes: fix remaining `Reveal:All`

Fixes #60855.

This PR replaces the remaining uses of `ParamEnv::reveal_all` with `LateContext`'s `param_env` (normally `Reveal::UserFacing`) in the improper ctypes lint.

4 years agoRollup merge of #73708 - Aaron1011:feature/reland-move-fn-self-msg, r=davidtwco
Manish Goregaokar [Sun, 28 Jun 2020 05:29:58 +0000 (22:29 -0700)]
Rollup merge of #73708 - Aaron1011:feature/reland-move-fn-self-msg, r=davidtwco

Explain move errors that occur due to method calls involving `self` (take two)

This is a re-attempt of #72389 (which was reverted in #73594)
Instead of using `ExpnKind::Desugaring` to represent operators, this PR
checks the lang item directly.

4 years agoRollup merge of #73672 - nellshamrell:async-fix, r=estebank
Manish Goregaokar [Sun, 28 Jun 2020 05:29:55 +0000 (22:29 -0700)]
Rollup merge of #73672 - nellshamrell:async-fix, r=estebank

Adds a clearer message for when the async keyword is missing from a f…

…unction

This is a somewhat simple fix for #66731.

Under the current version of Rust, if a user has a rust file that looks like this:

```rust
fn boo (){}

async fn foo() {
    boo().await;
}

fn main() {

}
```

And they attempt to run it, they will receive an error message that looks like this:

```bash
error: incorrect use of `await`                                                                                                        --> test.rs:4:14                                                                                                                       |                                                                                                                                   4 |     boo.await();                                                                                                                    |              ^^ help: `await` is not a method call, remove the parentheses                                                                                                                                                                                              error[E0277]: the trait bound `fn() {boo}: std::future::Future` is not satisfied                                                        --> test.rs:4:5                                                                                                                        |                                                                                                                                  4  |     boo.await();                                                                                                                    |     ^^^^^^^^^ the trait `std::future::Future` is not implemented for `fn() {boo}`                                                                                                                                                                                      error: aborting due to 2 previous errors                                                                                                                                                                                                                                    For more information about this error, try `rustc --explain E0277`.
```

This is not very clear.

With the changes made in this PR, when a user compiles and runs that same rust code, they will receive an error message that looks like this:

```bash
error[E0277]: `()` is not a future.
 --> test.rs:4:5
  |
4 |     boo().await;
  |     ^^^^^^^^^^^ `()` is not a future
  |
  = help: the trait `std::future::Future` is not implemented for `()`
  = note: required by `std::future::Future::poll`
```

In the future, I think we should make this error message even clearer, perhaps through a solution like the one described in [this comment](https://github.com/rust-lang/rust/issues/66731#issuecomment-644394287). However, as that potentially involves a major change proposal, I would rather get this change in now and make the error message a little clearer while an MCP is drafted and discussed.

Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
4 years agoRollup merge of #73525 - cuviper:llvm11, r=nikic
Manish Goregaokar [Sun, 28 Jun 2020 05:29:54 +0000 (22:29 -0700)]
Rollup merge of #73525 - cuviper:llvm11, r=nikic

Prepare for LLVM 11

These are just the code changes needed to build with the current LLVM master (version 11).

r? @nikic

4 years agoRollup merge of #73243 - poliorcetics:discourage-is-file, r=Amanieu
Manish Goregaokar [Sun, 28 Jun 2020 05:29:52 +0000 (22:29 -0700)]
Rollup merge of #73243 - poliorcetics:discourage-is-file, r=Amanieu

Add documentation to point to `File::open` or `OpenOptions::open` instead of `is_file` to check read/write possibility

Fixes #64170.

This adds documentation to point user towards `!is_dir` instead of `is_file` when all they want to is read from a source.

I ran `rg "fn is_file\("` to find all `is_file` methods, I hope I did not miss one.

4 years agoRollup merge of #72796 - RalfJung:mir-assign-sanity, r=matthewjasper
Manish Goregaokar [Sun, 28 Jun 2020 05:29:46 +0000 (22:29 -0700)]
Rollup merge of #72796 - RalfJung:mir-assign-sanity, r=matthewjasper

MIR sanity check: validate types on assignment

This expands the MIR validation added by @jonas-schievink in https://github.com/rust-lang/rust/pull/72093 to also check that on an assignment, the types of both sides match.

Cc @eddyb @oli-obk

4 years agoAuto merge of #72705 - Lucretiel:stdio-forwarding, r=Amanieu
bors [Sun, 28 Jun 2020 04:16:52 +0000 (04:16 +0000)]
Auto merge of #72705 - Lucretiel:stdio-forwarding, r=Amanieu

Added io forwarding methods to the stdio structs

Added methods to forward the `io::Read` and `io::Write` methods of the myriad wrapper structs in `stdio.rs` to their underlying readers / writers. This is especially important for the structs on the outside of a locking boundary, to ensure that the lock isn't being dropped and re-acquired in a loop.

4 years agoAdded the parapgrah to path::Path::is_file too
Alexis Bourget [Sat, 27 Jun 2020 20:59:47 +0000 (22:59 +0200)]
Added the parapgrah to path::Path::is_file too

4 years agoAuto merge of #73671 - ehuss:update-mdbook, r=Mark-Simulacrum
bors [Sat, 27 Jun 2020 20:14:34 +0000 (20:14 +0000)]
Auto merge of #73671 - ehuss:update-mdbook, r=Mark-Simulacrum

Update mdbook

This updates mdbook to 0.4.  The list of changes can be found at https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-040.  I think the most important one is the change to include fonts with the book instead of using the Google Fonts CDN. This adds a few megabytes of fonts to the docs component.  It may be possible to share the fonts across the books, but would take a fair bit of work to make that happen, so I'm not sure if it is necessary.

This also removes mdbook-linkcheck. It is currently not being used, and I don't foresee it going back into use anytime soon. I would prefer not to maintain something that isn't being used, and it removes a very large number of dependencies.

4 years agoAdd links to fs::DirEntry::metadata
Rob Young [Sat, 27 Jun 2020 18:32:19 +0000 (19:32 +0100)]
Add links to fs::DirEntry::metadata

`fs::DirEntry::metadata` doesn't traverse symlinks. It is not immediately
clear what to do if you do want to traverse symlinks. This change adds
links to the two other `metadata` functions that will follow symlinks.

4 years agoUpdate the documentation to point to open instead of is_file and is_dir
Alexis Bourget [Sat, 27 Jun 2020 16:10:58 +0000 (18:10 +0200)]
Update the documentation to point to open instead of is_file and is_dir

4 years agofix typo in self-profile.md
Takuto Ikuta [Sat, 27 Jun 2020 12:38:51 +0000 (21:38 +0900)]
fix typo in self-profile.md

4 years agomore LocalDefId cleanup
Bastian Kauschke [Sat, 27 Jun 2020 11:38:00 +0000 (13:38 +0200)]
more LocalDefId cleanup

4 years agomore LocalDefId in ty::context
Bastian Kauschke [Sat, 27 Jun 2020 11:15:12 +0000 (13:15 +0200)]
more LocalDefId in ty::context

4 years agouse LocalDefId in module checking
Bastian Kauschke [Sat, 27 Jun 2020 11:09:54 +0000 (13:09 +0200)]
use LocalDefId in module checking

4 years agoAuto merge of #73779 - Manishearth:rollup-lwqd9jm, r=Manishearth
bors [Sat, 27 Jun 2020 02:44:35 +0000 (02:44 +0000)]
Auto merge of #73779 - Manishearth:rollup-lwqd9jm, r=Manishearth

Rollup of 12 pull requests

Successful merges:

 - #72771 (Warn if linking to a private item)
 - #72937 (Fortanix SGX target libunwind build process changes)
 - #73485 (Perform obligation deduplication to avoid buggy `ExistentialMismatch`)
 - #73529 (Add liballoc impl SpecFromElem for i8)
 - #73579 (add missing doc links)
 - #73627 (Shortcuts for min/max on double-ended BTreeMap/BTreeSet iterators)
 - #73691 (Bootstrap: detect Windows based on sys.platform)
 - #73694 (Document the Self keyword)
 - #73718 (Document the super keyword)
 - #73728 (Document some invariants correctly/more)
 - #73738 (Remove irrelevant comment)
 - #73765 (Remove blank line)

Failed merges:

r? @ghost

4 years agoAuto merge of #73596 - petrochenkov:shebang2, r=Mark-Simulacrum
bors [Fri, 26 Jun 2020 22:42:44 +0000 (22:42 +0000)]
Auto merge of #73596 - petrochenkov:shebang2, r=Mark-Simulacrum

rustc_lexer: Simplify shebang parsing once more

Fixes https://github.com/rust-lang/rust/issues/73250 (beta regression)

Treat any line starting with `!#` as a shebang candidate, not only lines with something non-whitespace.
This way we no longer need to define what `is_whitespace` means ([Linux shebang whitespace](https://github.com/torvalds/linux/blob/master/fs/binfmt_script.c), ASCII whitespace, Rust lexer whitespace, etc), which is nice.

This change makes some invalid Rust code valid (see the regression above), but still never interprets a fragment of valid Rust code as a shebang.

(This PR also removes one duplicate test.)

4 years agoRollup merge of #73765 - kraai:remove-blank-line, r=jonas-schievink
Manish Goregaokar [Fri, 26 Jun 2020 20:57:46 +0000 (13:57 -0700)]
Rollup merge of #73765 - kraai:remove-blank-line, r=jonas-schievink

Remove blank line

4 years agoRollup merge of #73738 - nbdd0121:comment, r=nikomatsakis
Manish Goregaokar [Fri, 26 Jun 2020 20:57:44 +0000 (13:57 -0700)]
Rollup merge of #73738 - nbdd0121:comment, r=nikomatsakis

Remove irrelevant comment

Iterator is no longer a lang item since 216e72f8d9499d012e23bc4563215e693fcb4f35.

4 years agoRollup merge of #73728 - oli-obk:const_prop_cleanup, r=wesleywiser
Manish Goregaokar [Fri, 26 Jun 2020 20:57:43 +0000 (13:57 -0700)]
Rollup merge of #73728 - oli-obk:const_prop_cleanup, r=wesleywiser

Document some invariants correctly/more

r? @wesleywiser

4 years agoRollup merge of #73718 - poliorcetics:super-keyword, r=shepmaster
Manish Goregaokar [Fri, 26 Jun 2020 20:57:41 +0000 (13:57 -0700)]
Rollup merge of #73718 - poliorcetics:super-keyword, r=shepmaster

Document the super keyword

Partial fix of #34601.

Quite short, just a small example and a link to the reference.

@rustbot modify labels: T-doc,C-enhancement

4 years agoRollup merge of #73694 - poliorcetics:self-upper-keyword, r=Mark-Simulacrum
Manish Goregaokar [Fri, 26 Jun 2020 20:57:39 +0000 (13:57 -0700)]
Rollup merge of #73694 - poliorcetics:self-upper-keyword, r=Mark-Simulacrum

Document the Self keyword

Partial fix of #34601.

Document the `Self` keyword.

This contains simple examples of the places where `Self` can be used.

4 years agoRollup merge of #73691 - ajpaverd:bootstrap-windows-73689, r=Mark-Simulacrum
Manish Goregaokar [Fri, 26 Jun 2020 20:57:37 +0000 (13:57 -0700)]
Rollup merge of #73691 - ajpaverd:bootstrap-windows-73689, r=Mark-Simulacrum

Bootstrap: detect Windows based on sys.platform

Closes #73689.

4 years agoRollup merge of #73627 - ssomers:btree_iter_min_max, r=Mark-Simulacrum
Manish Goregaokar [Fri, 26 Jun 2020 20:57:35 +0000 (13:57 -0700)]
Rollup merge of #73627 - ssomers:btree_iter_min_max, r=Mark-Simulacrum

Shortcuts for min/max on double-ended BTreeMap/BTreeSet iterators

Closes #59947: a performance tweak that might benefit some. Optimizes `min` and `max ` on all btree double-ended iterators that do not drop, i.e. the iterators created by:

- `BTreeMap::iter`
- `BTreeMap::iter_mut`
- `BTreeMap::keys` and `BTreeSet::iter`
- `BTreeMap::range` and `BTreeSet::range`
- `BTreeMap::range_mut`

Also in these (currently) single-ended iterators, but obviously for `min` only:
- `BTreeSet::difference`
- `BTreeSet::intersection`
- `BTreeSet::symmetric_difference`
- `BTreeSet::union`

Did not do this in iterators created by `into_iter` to preserve drop order, as outlined in #62316.

Did not do this in iterators created by `drain_filter`, possibly to preserve drop order, possibly to preserve predicate invocation, mostly to not have to think about it too hard (I guess maybe it wouldn't be a change for `min`, which is the only shortcut possible in this single-ended iterator).

4 years agoRollup merge of #73579 - RalfJung:doc-missing-links, r=shepmaster
Manish Goregaokar [Fri, 26 Jun 2020 20:57:33 +0000 (13:57 -0700)]
Rollup merge of #73579 - RalfJung:doc-missing-links, r=shepmaster

add missing doc links

The doc comments contain ``[`size_of_val`]`` but the link target was missing.

4 years agoRollup merge of #73529 - pickfire:liballoc-specfromelem-i8, r=cuviper
Manish Goregaokar [Fri, 26 Jun 2020 20:57:31 +0000 (13:57 -0700)]
Rollup merge of #73529 - pickfire:liballoc-specfromelem-i8, r=cuviper

Add liballoc impl SpecFromElem for i8

Speedup vec![1_i8; N] for non-zero element.

Before
test do_bench_from_elem_i8        ... bench:         130 ns/iter (+/- 7) = 61 MB/s
test do_bench_from_elem_u8        ... bench:         121 ns/iter (+/- 4) = 66 MB/s
After
test do_bench_from_elem_i8        ... bench:         123 ns/iter (+/- 7) = 65 MB/s
test do_bench_from_elem_u8        ... bench:         121 ns/iter (+/- 5) = 66 MB/s

No speed difference if element is already zero.

```rust
#[bench]
fn do_bench_from_elem_i8(b: &mut Bencher) {
    b.bytes = 8 as u64;
    b.iter(|| {
        let dst = ve::vec![10_i8; 100];
        assert_eq!(dst.len(), 100);
        assert!(dst.iter().all(|x| *x == 10));
    })
}
```

As suggested by @cuviper
https://rust-lang.zulipchat.com/#narrow/stream/219381-t-libs/topic/SpecForElem.20for.20other.20integers

r? @cuviper
CC @joshtriplett

Edit: Wow, I just realized both reviewers are Josh.

4 years agoRollup merge of #73485 - estebank:dedup-preds, r=nikomatsakis
Manish Goregaokar [Fri, 26 Jun 2020 20:57:29 +0000 (13:57 -0700)]
Rollup merge of #73485 - estebank:dedup-preds, r=nikomatsakis

Perform obligation deduplication to avoid buggy `ExistentialMismatch`

Address #59326.

4 years agoRollup merge of #72937 - AdrianCX:master, r=nikomatsakis
Manish Goregaokar [Fri, 26 Jun 2020 20:57:26 +0000 (13:57 -0700)]
Rollup merge of #72937 - AdrianCX:master, r=nikomatsakis

Fortanix SGX target libunwind build process changes

Ticket: https://github.com/fortanix/rust-sgx/issues/174
LLVM related changes (merged): https://github.com/rust-lang/llvm-project/pull/57

Description: libunwind changes needed to run code in sgx environment via rust-sgx.

Target that uses this in rust: x86_64-fortanix-unknown-sgx.

Without this change, rust std for this toolchain is forced to use a precompiled library loaded via environment variable.

With this change we act the same as musl target.

4 years agoRollup merge of #72771 - jyn514:rustdoc, r=Manishearth
Manish Goregaokar [Fri, 26 Jun 2020 20:57:24 +0000 (13:57 -0700)]
Rollup merge of #72771 - jyn514:rustdoc, r=Manishearth

Warn if linking to a private item

Closes https://github.com/rust-lang/rust/issues/72769

r? @GuillaumeGomez

4 years agoExplain move errors that occur due to method calls involving `self`
Aaron Hill [Thu, 11 Jun 2020 17:48:46 +0000 (13:48 -0400)]
Explain move errors that occur due to method calls involving `self`

This is a re-attempt of #72389 (which was reverted in #73594)
Instead of using `ExpnKind::Desugaring` to represent operators, this PR
checks the lang item directly.

4 years agoMake `fn_arg_names` return `Ident` instead of symbol
Aaron Hill [Thu, 11 Jun 2020 17:42:22 +0000 (13:42 -0400)]
Make `fn_arg_names` return `Ident` instead of symbol

Also, implement this query for the local crate, not just foreign crates.

4 years agorustc_lexer: Simplify shebang parsing once more
Vadim Petrochenkov [Sun, 21 Jun 2020 21:40:11 +0000 (00:40 +0300)]
rustc_lexer: Simplify shebang parsing once more

4 years agoerrors: use `-Z terminal-width` in JSON emitter
David Wood [Fri, 26 Jun 2020 12:18:16 +0000 (13:18 +0100)]
errors: use `-Z terminal-width` in JSON emitter

This commit makes the JSON emitter use `-Z terminal-width` in the
"rendered" field of the JSON output.

Signed-off-by: David Wood <david@davidtw.co>
4 years agoUpdate mdbook.
Eric Huss [Tue, 23 Jun 2020 22:23:46 +0000 (15:23 -0700)]
Update mdbook.

4 years agoRemove mdbook-linkcheck.
Eric Huss [Tue, 23 Jun 2020 22:00:48 +0000 (15:00 -0700)]
Remove mdbook-linkcheck.

4 years agoAuto merge of #73513 - oli-obk:const_binop_overflow, r=estebank
bors [Fri, 26 Jun 2020 14:08:46 +0000 (14:08 +0000)]
Auto merge of #73513 - oli-obk:const_binop_overflow, r=estebank

Show the values and computation that would overflow a const evaluation or propagation

Fixes #71134

In contrast to the example in the issue it doesn't use individual spans for each operand. The effort required to implement that is quite high compared to the little (if at all) benefit it would bring to diagnostics.

cc @shepmaster

The way this is implemented it is also fairly easy to do the same for overflow panics at runtime, but that should be done in a separate PR since it may have runtime performance implications.

4 years agoRemove blank line
KRAAI, MATTHEW [VISUS] [Fri, 26 Jun 2020 13:22:35 +0000 (06:22 -0700)]
Remove blank line

4 years agoFix debug messages
Joshua Nelson [Fri, 26 Jun 2020 12:24:45 +0000 (08:24 -0400)]
Fix debug messages

4 years agoGenerate docs for links to private items when passed --document-private
Joshua Nelson [Sat, 30 May 2020 15:35:35 +0000 (11:35 -0400)]
Generate docs for links to private items when passed --document-private

- Pass around document_private a lot more
- Add tests
  + Add tests for intra-doc links to private items
  + Add ignored tests for warnings in reference links

4 years agoWarn if linking to a private item
Joshua Nelson [Wed, 13 May 2020 04:21:54 +0000 (00:21 -0400)]
Warn if linking to a private item

4 years agoimproper_ctypes: fix remaining `Reveal:All`
David Wood [Fri, 26 Jun 2020 10:21:31 +0000 (11:21 +0100)]
improper_ctypes: fix remaining `Reveal:All`

This commit replaces the remaining uses of `ParamEnv::reveal_all` with
`LateContext`'s `param_env` (normally `Reveal::UserFacing`).

Signed-off-by: David Wood <david@davidtw.co>
4 years agoAuto merge of #73756 - Manishearth:rollup-aehswb2, r=Manishearth
bors [Fri, 26 Jun 2020 10:11:43 +0000 (10:11 +0000)]
Auto merge of #73756 - Manishearth:rollup-aehswb2, r=Manishearth

Rollup of 13 pull requests

Successful merges:

 - #72620 (Omit DW_AT_linkage_name when it is the same as DW_AT_name)
 - #72967 (Don't move cursor in search box when using arrows to navigate results)
 - #73102 (proc_macro: Stop flattening groups with dummy spans)
 - #73297 (Support configurable deny-warnings for all in-tree crates.)
 - #73507 (Cleanup MinGW LLVM linkage workaround)
 - #73588 (Fix handling of reserved registers for ARM inline asm)
 - #73597 (Record span of `const` kw in GenericParamKind)
 - #73629 (Make AssocOp Copy)
 - #73681 (Update Chalk to 0.14)
 - #73707 (Fix links in `SliceIndex` documentation)
 - #73719 (emitter: column width defaults to 140)
 - #73729 (disable collectionbenches for android)
 - #73748 (Add code block to code in documentation of `List::rebase_onto`)

Failed merges:

r? @ghost

4 years agoShow the values and computation that would overflow a const evaluation or propagation
Oliver Scherer [Fri, 19 Jun 2020 16:57:15 +0000 (18:57 +0200)]
Show the values and computation that would overflow a const evaluation or propagation

4 years agoShortcuts for min/max on ordinary BTreeMap/BTreeSet iterators
Stein Somers [Mon, 22 Jun 2020 18:12:11 +0000 (20:12 +0200)]
Shortcuts for min/max on ordinary BTreeMap/BTreeSet iterators

4 years agoRollup merge of #73748 - jyn514:doc-fix, r=Manishearth
Manish Goregaokar [Fri, 26 Jun 2020 07:39:19 +0000 (00:39 -0700)]
Rollup merge of #73748 - jyn514:doc-fix, r=Manishearth

Add code block to code in documentation of `List::rebase_onto`

Closes https://github.com/rust-lang/rust/issues/73676

@bors rollup=always

4 years agoRollup merge of #73729 - nellshamrell:disable-collectionsbenches-android, r=sfackler
Manish Goregaokar [Fri, 26 Jun 2020 07:39:17 +0000 (00:39 -0700)]
Rollup merge of #73729 - nellshamrell:disable-collectionsbenches-android, r=sfackler

disable collectionbenches for android

Fixes #73535

Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
4 years agoRollup merge of #73719 - davidtwco:issue-72509-emitter-column-width, r=estebank
Manish Goregaokar [Fri, 26 Jun 2020 07:39:15 +0000 (00:39 -0700)]
Rollup merge of #73719 - davidtwco:issue-72509-emitter-column-width, r=estebank

emitter: column width defaults to 140

Fixes #72509.

This PR modifies the column width computation in the emitter when `termize::dimensions` returns `None` so that it uses the default value of 140 (which is used in UI testing currently) instead of `usize::MAX` which just ends up causing overflows in later computations.

I also tried changing the computations which used `column_width` with their saturating equivalent, but the output appeared the same - so I decided to go with this approach because I feel like it's less likely to accidentally re-introduce an ICE like this in future (e.g. adding a non-saturating operation on `column_width` in future).

I haven't added a test because I couldn't come up with a MCVE. I stumbled upon this running rustc-perf with the `piston-image` benchmark (running in tmux; it only happened with stage two builds only; and only when running through Cargo, not rustc directly with the same flags). In addition, given the nature of the issue, I don't know that we *could* write a UI test for this. Open to suggestions here though.

r? @estebank

4 years agoRollup merge of #73707 - LeSeulArtichaut:patch-3, r=kennytm
Manish Goregaokar [Fri, 26 Jun 2020 07:39:14 +0000 (00:39 -0700)]
Rollup merge of #73707 - LeSeulArtichaut:patch-3, r=kennytm

Fix links in `SliceIndex` documentation

See [this doc](https://doc.rust-lang.org/nightly/std/slice/trait.SliceIndex.html#tymethod.get_unchecked) whose links aren't active because of this missing newline.

4 years agoRollup merge of #73681 - jackh726:chalk-0.14, r=nikomatsakis
Manish Goregaokar [Fri, 26 Jun 2020 07:39:12 +0000 (00:39 -0700)]
Rollup merge of #73681 - jackh726:chalk-0.14, r=nikomatsakis

Update Chalk to 0.14

Not a ton here. Notable changes:
- Update to `0.14.0`
  - New dependency on `tracing`, in `librustc_traits` only
  - `FnAbi` from Chalk is `rustc_target::spec::abi::Abi`
  - `Dynamic` actually lowers region
  - Actually lower closures, with some tests. This doesn't 100% work, but can't confirm that's *only* because of closure lowering.
- Use `FxIndexSet` instead of `FxHashSet` in `chalk_fulfill`, which seems to have fixed the non-deterministic test error ordering. Guess we'll see on CI
- Actually implement `opaque_ty_data`, though I don't think this is sufficient for tests for them (I haven't added any)
- Uncomment some of the chalk tests that now work

r? @nikomatsakis

4 years agoRollup merge of #73629 - flip1995:assoc_op_copy_clone, r=Manishearth
Manish Goregaokar [Fri, 26 Jun 2020 07:39:10 +0000 (00:39 -0700)]
Rollup merge of #73629 - flip1995:assoc_op_copy_clone, r=Manishearth

Make AssocOp Copy

Found that this enum is not `Copy` while reviewing this Clippy PR: https://github.com/rust-lang/rust-clippy/pull/5727#discussion_r443761621

There shouldn't be a reason why this should not be `Copy`.

4 years agoRollup merge of #73597 - ayazhafiz:i/const-span, r=ecstatic-morse
Manish Goregaokar [Fri, 26 Jun 2020 07:39:08 +0000 (00:39 -0700)]
Rollup merge of #73597 - ayazhafiz:i/const-span, r=ecstatic-morse

Record span of `const` kw in GenericParamKind

Context: this is needed for a fix of https://github.com/rust-lang/rustfmt/issues/4263,
which currently records the span of a const generic param incorrectly
because the location of the `const` kw is not known.

I am not sure how to add tests for this; any guidance in how to do so
would be appreciated :slightly_smiling_face:

4 years agoRollup merge of #73588 - Amanieu:thumb-fp, r=nagisa
Manish Goregaokar [Fri, 26 Jun 2020 07:39:06 +0000 (00:39 -0700)]
Rollup merge of #73588 - Amanieu:thumb-fp, r=nagisa

Fix handling of reserved registers for ARM inline asm

`r6` is now disallowed as an operand since LLVM sometimes uses it as a base pointer.

The check against using the frame pointer as an operand now takes the platform into account and will block either `r7` or `r11` as appropriate.

Fixes #73450

cc @cbiffle

4 years agoRollup merge of #73507 - mati865:cleanup-mingw-llvm-linkage, r=matthewjasper
Manish Goregaokar [Fri, 26 Jun 2020 07:39:04 +0000 (00:39 -0700)]
Rollup merge of #73507 - mati865:cleanup-mingw-llvm-linkage, r=matthewjasper

Cleanup MinGW LLVM linkage workaround

LLVM correctly passes `uuid` for a long time, GCC unwinding library (either static or dynamic) comes from [windows_gnu_base](https://github.com/rust-lang/rust/blob/06e47688bf15d0215edbe05b21603062f6d2eb5d/src/librustc_target/spec/windows_gnu_base.rs).

4 years agoRollup merge of #73297 - ehuss:tool-warnings, r=Mark-Simulacrum
Manish Goregaokar [Fri, 26 Jun 2020 07:39:01 +0000 (00:39 -0700)]
Rollup merge of #73297 - ehuss:tool-warnings, r=Mark-Simulacrum

Support configurable deny-warnings for all in-tree crates.

This removes the hard-coded `deny(warnings)` on all in-tree tools, and allows it to be configured from the config.  This is just a personal preference, as I find `deny(warnings)` frustrating during development or doing small tests.

This also fixes some regressions in terms of warning handling.  Warnings used to be dependent on `SourceType`, but in #64316 it was changed to be based on `Mode`. This means tools like rustdoc no longer used the same settings as the rest of the tree. It also made `SourceType` useless since the only thing it was used for was warnings. I think it would be better for everything in the tree to use the same settings.

Fixes #64523

4 years agoRollup merge of #73102 - petrochenkov:flatgroup, r=Aaron1011
Manish Goregaokar [Fri, 26 Jun 2020 07:39:00 +0000 (00:39 -0700)]
Rollup merge of #73102 - petrochenkov:flatgroup, r=Aaron1011

proc_macro: Stop flattening groups with dummy spans

Reduce the scope of the hack described in https://github.com/rust-lang/rust/issues/72545#issuecomment-640276791.

We still pass AST fragments to attribute and derive macros as single nonterminal tokens rather than as tokens streams, but now use a precise flag instead of the span-based heuristic that could do lead to incorrect behavior in unrelated cases.

https://github.com/rust-lang/rust/pull/73345 attempts to fully resolve this issue, but there are some compatibility issues to be addressed.

4 years agoRollup merge of #72967 - integer32llc:prevent-default-arrows, r=kinnison
Manish Goregaokar [Fri, 26 Jun 2020 07:38:58 +0000 (00:38 -0700)]
Rollup merge of #72967 - integer32llc:prevent-default-arrows, r=kinnison

Don't move cursor in search box when using arrows to navigate results

## What happens

- Go to https://doc.rust-lang.org/stable/std/index.html
- Press 's' to focus the search box
- Type a query like 'test'
- Press the down arrow one or more times to change which search result is highlighted
- Press the up arrow once to go up one search result
- Notice the cursor in the search box is now at the beginning of your query, such that if you now typed 'a' the search box would contain 'atest', when it would be expected that the cursor would have remained where it was and if you typed 'a' at this point it would result in 'testa'
- Press the down arrow once to go down one search result
- Now notice the cursor is at the end of your query again

## What I expected

I expected that changing which search result was highlighted using the up and down arrows would have no effect on where the cursor was in the search box.

## The fix

This PR prevents the default action of the up and down arrows when the custom keydown events are happening during a search.

4 years agoRollup merge of #72620 - tmiasko:linkage-name, r=eddyb
Manish Goregaokar [Fri, 26 Jun 2020 07:38:56 +0000 (00:38 -0700)]
Rollup merge of #72620 - tmiasko:linkage-name, r=eddyb

Omit DW_AT_linkage_name when it is the same as DW_AT_name

The DWARF standard suggests that it might be useful to include
`DW_AT_linkage_name` when it is *distinct* from the identifier name.

Fixes #46487.
Fixes #59422.

4 years agoAuto merge of #73743 - eddyb:lint-on-demand-typeck-tables, r=Manishearth
bors [Fri, 26 Jun 2020 06:11:01 +0000 (06:11 +0000)]
Auto merge of #73743 - eddyb:lint-on-demand-typeck-tables, r=Manishearth

rustc_lint: only query `typeck_tables_of` when a lint needs it.

This was prompted by @jyn514 running into a situation where `rustdoc` wants to run the `unused_doc` lint without triggering type-checking (as an alternative to the "everybody loops" approach - type-checking may error/ICE because of the `rustdoc` feature of allowing multi-platform docs where the actual bodies of functions may refer to APIs for different platforms).

There was also this comment in the source:
```rust
// FIXME: Make this lazy to avoid running the TypeckTables query?
```

The main effect of this is for lint authors, who now need to use `cx.tables()` to get `&TypeckTables`, as opposed to having them always available in `cx.tables`.

r? @oli-obk or @Manishearth

4 years agoSupport configurable deny-warnings for all in-tree crates.
Eric Huss [Fri, 12 Jun 2020 22:44:56 +0000 (15:44 -0700)]
Support configurable deny-warnings for all in-tree crates.

4 years agoAdd code block to code in documentation of `List::rebase_onto`
Joshua Nelson [Fri, 26 Jun 2020 02:03:31 +0000 (22:03 -0400)]
Add code block to code in documentation of `List::rebase_onto`

4 years agoAuto merge of #73746 - Manishearth:rollup-80jnynm, r=Manishearth
bors [Fri, 26 Jun 2020 02:16:07 +0000 (02:16 +0000)]
Auto merge of #73746 - Manishearth:rollup-80jnynm, r=Manishearth

Rollup of 14 pull requests

Successful merges:

 - #72617 (Add a fast path for `std::thread::panicking`.)
 - #72738 (Self contained linking option)
 - #72770 (Implement mixed script confusable lint.)
 - #73418 (Add unstable `core::mem::variant_count` intrinsic)
 - #73460 (Emit line info for generator variants)
 - #73534 (Provide suggestions for some moved value errors)
 - #73538 (make commented examples use valid syntax, and be more consistent )
 - #73581 (Create 0766 error code)
 - #73619 (Document the mod keyword)
 - #73621 (Document the mut keyword)
 - #73648 (Document the return keyword)
 - #73673 (Fix ptr doc warnings.)
 - #73674 (Tweak binop errors)
 - #73687 (Clean up E0701 explanation)

Failed merges:

 - #73708 (Explain move errors that occur due to method calls involving `self` (take two))

r? @ghost

4 years agoPrepare for LLVM 11
Josh Stone [Fri, 26 Jun 2020 01:52:41 +0000 (18:52 -0700)]
Prepare for LLVM 11

4 years agoRollup merge of #73687 - GuillaumeGomez:cleanup-e0701, r=Dylan-DPC
Manish Goregaokar [Fri, 26 Jun 2020 01:00:25 +0000 (18:00 -0700)]
Rollup merge of #73687 - GuillaumeGomez:cleanup-e0701, r=Dylan-DPC

Clean up E0701 explanation

r? @Dylan-DPC

4 years agoRollup merge of #73674 - estebank:op-trait-bound-suggestion, r=davidtwco
Manish Goregaokar [Fri, 26 Jun 2020 01:00:23 +0000 (18:00 -0700)]
Rollup merge of #73674 - estebank:op-trait-bound-suggestion, r=davidtwco

Tweak binop errors

* Suggest potentially missing binop trait bound (fix #73416)
* Use structured suggestion for dereference in binop

4 years agoRollup merge of #73673 - ehuss:fix-ptr-docs, r=oli-obk
Manish Goregaokar [Fri, 26 Jun 2020 01:00:22 +0000 (18:00 -0700)]
Rollup merge of #73673 - ehuss:fix-ptr-docs, r=oli-obk

Fix ptr doc warnings.

#73398 added some stray backtick lines which cause warnings when the docs are built.

4 years agoRollup merge of #73648 - poliorcetics:return-keyword, r=joshtriplett
Manish Goregaokar [Fri, 26 Jun 2020 01:00:20 +0000 (18:00 -0700)]
Rollup merge of #73648 - poliorcetics:return-keyword, r=joshtriplett

Document the return keyword

Partial fix of #34601.

This documents the `return` keyword with two short example to explain it is not needed for the last expression in a function and a long example to show its use when interrupting a function execution early.

I did not put a link to the reference since the only link I found was https://doc.rust-lang.org/stable/reference/expressions/return-expr.html#return-expressions.

@rustbot modify labels: T-doc,C-enhancement

4 years agoRollup merge of #73621 - poliorcetics:mut-keyword, r=steveklabnik
Manish Goregaokar [Fri, 26 Jun 2020 01:00:18 +0000 (18:00 -0700)]
Rollup merge of #73621 - poliorcetics:mut-keyword, r=steveklabnik

Document the mut keyword

Partial fix for #34601.

Documentation for the `mut` keyword. I think it's okay for it to be quite short, this is not the book not the reference, but if you find something is missing, do not hesitate to tell me.

4 years agoRollup merge of #73619 - poliorcetics:mod-keyword, r=steveklabnik
Manish Goregaokar [Fri, 26 Jun 2020 01:00:16 +0000 (18:00 -0700)]
Rollup merge of #73619 - poliorcetics:mod-keyword, r=steveklabnik

Document the mod keyword

Partial fix for #34601 .

Documentation for the `mod` keyword.

4 years agoRollup merge of #73581 - GuillaumeGomez:add-0766, r=varkor
Manish Goregaokar [Fri, 26 Jun 2020 01:00:14 +0000 (18:00 -0700)]
Rollup merge of #73581 - GuillaumeGomez:add-0766, r=varkor

Create 0766 error code

4 years agoRollup merge of #73538 - tshepang:fix-example, r=nikomatsakis
Manish Goregaokar [Fri, 26 Jun 2020 01:00:12 +0000 (18:00 -0700)]
Rollup merge of #73538 - tshepang:fix-example, r=nikomatsakis

make commented examples use valid syntax, and be more consistent

4 years agoRollup merge of #73534 - estebank:borrowck-suggestions, r=matthewjasper
Manish Goregaokar [Fri, 26 Jun 2020 01:00:10 +0000 (18:00 -0700)]
Rollup merge of #73534 - estebank:borrowck-suggestions, r=matthewjasper

Provide suggestions for some moved value errors

When encountering an used moved value where the previous move happened
in a `match` or `if let` pattern, suggest using `ref`. Fix #63988.

When encountering a `&mut` value that is used in multiple iterations of
a loop, suggest reborrowing it with `&mut *`. Fix #62112.

4 years agoRollup merge of #73460 - tmandry:variant-lineinfo, r=oli-obk
Manish Goregaokar [Fri, 26 Jun 2020 01:00:08 +0000 (18:00 -0700)]
Rollup merge of #73460 - tmandry:variant-lineinfo, r=oli-obk

Emit line info for generator variants

Debuggers should be able to read a generator / async fn state machine and show the line it's suspended at. Eventually, this could grow into an "async stack trace" feature of sorts. While no debugger support this for Rust today, this PR adds the debuginfo necessary for that support to exist.

[This gist](https://gist.github.com/tmandry/6d7004fa008684f76809208847459f9b) shows the resulting debuginfo for a simple example. Here's a snippet:

```
0x00000986:           DW_TAG_variant
                        DW_AT_discr_value       (0x03)

0x00000988:             DW_TAG_member
                          DW_AT_name    ("3")
                          DW_AT_type    (0x000009bc "Suspend0")
                          DW_AT_decl_file       ("/home/tmandry/code/playground/generator-simple.rs")
                          DW_AT_decl_line       (6)
                          DW_AT_alignment       (8)
                          DW_AT_data_member_location    (0x00)
```

The file and line have been added here. The line currently points to the beginning of the statement containing the yield (or await), because that's what the MIR source info points to for the yield terminator. (We may want to point to the yield or await line specifically, but that can be done independently of this change.)

Debuggers don't know how to use this kind of info yet. However, we're hoping to experiment with adding such support to Fuchsia's debugger. It would be exciting if someone were interested in adding similar to support to gdb/lldb.

r? @oli-obk
cc @eddyb @jonas-schievink

Part of #73524.

4 years agoRollup merge of #73418 - doctorn:variants-intrinsic, r=kennytm
Manish Goregaokar [Fri, 26 Jun 2020 01:00:07 +0000 (18:00 -0700)]
Rollup merge of #73418 - doctorn:variants-intrinsic, r=kennytm

Add unstable `core::mem::variant_count` intrinsic

Adds a new `const fn` intrinsic which can be used to determine the number of variants in an `enum`.

I've shown this to a couple of people and they invariably ask 'why on earth?', but there's actually a very neat use case:

At the moment, if you want to create an opaque array type that's indexed by an `enum` with one element for each variant, you either have to hard-code the number of variants, add a `LENGTH` variant or use a `Vec`, none of which are suitable in general (number of variants could change; pattern matching `LENGTH` becomes frustrating; might not have `alloc`). By including this intrinsic, it becomes possible to write the following:

```rust
#[derive(Copy, Clone)]
enum OpaqueIndex {
    A = 0,
    B,
    C,
}

struct OpaqueVec<T>(Box<[T; std::mem::num_variants::<OpaqueIndex>()]>);

impl<T> std::ops::Index<OpaqueIndex> for OpaqueVec<T> {
    type Output = T;

    fn index(&self, idx: OpaqueIndex) -> &Self::Output {
        &self.0[idx as usize]
    }
}
```

(We even have a use cases for this in `rustc` and I plan to use it to re-implement the lang-items table.)

4 years agoRollup merge of #72770 - crlf0710:mixed_script_confusable, r=Manishearth
Manish Goregaokar [Fri, 26 Jun 2020 01:00:05 +0000 (18:00 -0700)]
Rollup merge of #72770 - crlf0710:mixed_script_confusable, r=Manishearth

Implement mixed script confusable lint.

This implements the mixed script confusable lint defined in RFC 2457.
This is blocked on #72069 and https://github.com/unicode-rs/unicode-security/pull/13, and will need a Cargo.toml version bump after those are resolved.

The lint message warning is sub-optimal for now. We'll need a mechanism to properly output  `AugmentScriptSet` to screen, this is to be added in `unicode-security` crate.

r? @Manishearth

4 years agoRollup merge of #72738 - mati865:self-contained-option, r=petrochenkov
Manish Goregaokar [Fri, 26 Jun 2020 01:00:03 +0000 (18:00 -0700)]
Rollup merge of #72738 - mati865:self-contained-option, r=petrochenkov

Self contained linking option

With objects moved to self-contained directory by https://github.com/rust-lang/rust/pull/72999 we can now add option to control whether to use self-contained on native linkage mode.

4 years agoRollup merge of #72617 - eduardosm:panicking, r=Amanieu
Manish Goregaokar [Fri, 26 Jun 2020 01:00:02 +0000 (18:00 -0700)]
Rollup merge of #72617 - eduardosm:panicking, r=Amanieu

Add a fast path for `std::thread::panicking`.

This is done by adding a global atomic variable (non-TLS) that counts how many threads are panicking. In order to check if the current thread is panicking, this variable is read and, if it is zero, no thread (including the one where `panicking` is being called) is panicking and `panicking` can return `false` immediately without needing to access TLS. If the global counter is not zero, the local counter is accessed from TLS to check if the current thread is panicking.

4 years agorustc_lint: only query `typeck_tables_of` when a lint needs it.
Eduard-Mihai Burtescu [Thu, 25 Jun 2020 23:56:23 +0000 (02:56 +0300)]
rustc_lint: only query `typeck_tables_of` when a lint needs it.

4 years agoAdds a clearer message for when the async keyword is missing from a function
Nell Shamrell [Thu, 18 Jun 2020 17:30:47 +0000 (10:30 -0700)]
Adds a clearer message for when the async keyword is missing from a function

Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
4 years agoAuto merge of #71858 - petrochenkov:env, r=Mark-Simulacrum
bors [Thu, 25 Jun 2020 22:52:59 +0000 (22:52 +0000)]
Auto merge of #71858 - petrochenkov:env, r=Mark-Simulacrum

Print environment variables accessed by rustc as special comments into depinfo files

So cargo (and perhaps others tools) can use them for linting (at least) or for actually rebuilding crates on env var changes.

---
I've recently observed one more forgotten environment variable in a build script https://github.com/rust-lang/rust/pull/71314/commits/8a77d1ca3fc2df789157f7986ddbaf2a377ff0fe and thought it would be nice to provide the list of accessed variables to cargo automatically as a part of depinfo.

Unsurprisingly, I wasn't the first who had this idea - cc https://github.com/rust-lang/rust/issues/70517 https://github.com/rust-lang/rust/issues/40364 https://github.com/rust-lang/rust/issues/44074.

Also, there are dozens of uses of `(option_)env!` in rustc repo and, like, half of them are not registered in build scripts.

---
Description:
- depinfo files are extended with special comments containing info about environment variables accessed during compilation.
- Comment format for environment variables with successfully retrieved value: `# env-dep:KEY=VALUE`.
- Comment format for environment variables without successfully retrieved value: `# env-dep:KEY` (can happen with `option_env!`).
- `KEY` and `VALUE` are minimally escaped (`\n`, `\r`, `\\`) so they don't break makefile comments and can be unescaped by anything that can unescape standard `escape_default` and friends.

FCP report: https://github.com/rust-lang/rust/pull/71858#issuecomment-633071488

Closes https://github.com/rust-lang/rust/issues/70517
Closes https://github.com/rust-lang/rust/issues/40364
Closes https://github.com/rust-lang/rust/issues/44074
A new issue in the cargo repo will be needed to track the cargo side of this feature.

r? @ehuss

4 years agoRemove irrelevant comment
Gary Guo [Thu, 25 Jun 2020 22:08:58 +0000 (23:08 +0100)]
Remove irrelevant comment

4 years agoproc_macro: Stop flattening groups with dummy spans
Vadim Petrochenkov [Sun, 7 Jun 2020 18:29:48 +0000 (21:29 +0300)]
proc_macro: Stop flattening groups with dummy spans

4 years agoadd exception for liballoc benches to tidy
Nell Shamrell [Thu, 25 Jun 2020 20:57:29 +0000 (13:57 -0700)]
add exception for liballoc benches to tidy

Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
4 years agodisable collectionbenches for android
Nell Shamrell [Thu, 25 Jun 2020 18:13:22 +0000 (11:13 -0700)]
disable collectionbenches for android

Signed-off-by: Nell Shamrell <nellshamrell@gmail.com>
4 years agoImplement mixed script confusable lint.
Charles Lew [Tue, 23 Jun 2020 11:45:13 +0000 (19:45 +0800)]
Implement mixed script confusable lint.

4 years agoAuto merge of #72717 - poliorcetics:try-from-int-to-nzint, r=dtolnay
bors [Thu, 25 Jun 2020 17:37:02 +0000 (17:37 +0000)]
Auto merge of #72717 - poliorcetics:try-from-int-to-nzint, r=dtolnay

Add TryFrom<{int}> for NonZero{int}

Adds `TryFrom<{int}> for NonZero{int}`.

It uses the existing `NonZero{int}::new()` and `Option::ok_or()` functions, meaning the checks are not repeated.

I also added tests, I tried to follow the convention I saw in the test file.

I also used `#[stable(feature = "nzint_try_from_int_conv", since = "1.46.0")]`, but I have no idea if the feature/version are correctly named or even correct.

4 years agoDocument some invariants correctly/more
Oliver Scherer [Thu, 25 Jun 2020 17:08:06 +0000 (19:08 +0200)]
Document some invariants correctly/more

4 years agoBootstrap: fallback detection of Windows
Andrew Paverd [Thu, 25 Jun 2020 14:45:24 +0000 (15:45 +0100)]
Bootstrap: fallback detection of Windows

4 years agoAuto merge of #73711 - Dylan-DPC:rollup-kzx15of, r=Dylan-DPC
bors [Thu, 25 Jun 2020 12:43:50 +0000 (12:43 +0000)]
Auto merge of #73711 - Dylan-DPC:rollup-kzx15of, r=Dylan-DPC

Rollup of 6 pull requests

Successful merges:

 - #72700 (`improper_ctypes_definitions` lint)
 - #73516 (Allow dynamic linking for iOS/tvOS targets)
 - #73616 (Liballoc minor hash import tweak)
 - #73634 (Add UI test for issue 73592)
 - #73688 (Document the self keyword)
 - #73698 (Add procedure for prioritization notifications on Zulip)

Failed merges:

r? @ghost

4 years agoUpdate UI test
Guillaume Gomez [Sun, 21 Jun 2020 12:08:06 +0000 (14:08 +0200)]
Update UI test

4 years agoAdd E0766 error for unterminated double quote byte string
Guillaume Gomez [Sun, 21 Jun 2020 12:07:59 +0000 (14:07 +0200)]
Add E0766 error for unterminated double quote byte string

4 years agoemitter: column width defaults to 140
David Wood [Thu, 25 Jun 2020 10:56:15 +0000 (11:56 +0100)]
emitter: column width defaults to 140

This commit modifies the column width computation in the emitter when
`termize::dimensions` returns `None` so that it uses the default value
of 140 (which is used in UI testing currently) instead of `usize::MAX`
which just ends up causing overflows in later computations. This is hard
to test but appears to produce the same output as using saturating
functions instead.

Signed-off-by: David Wood <david@davidtw.co>
4 years agoRemove deprecated comments
Adrian Cruceru [Thu, 25 Jun 2020 10:30:27 +0000 (12:30 +0200)]
Remove deprecated comments

4 years agoFix comments
Adrian Cruceru [Thu, 25 Jun 2020 10:01:02 +0000 (12:01 +0200)]
Fix comments

4 years agoDocument the super keyword
Alexis Bourget [Thu, 25 Jun 2020 09:40:07 +0000 (11:40 +0200)]
Document the super keyword