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

Reducing spurious unused lifetime warnings. #64603

Merged
merged 1 commit into from Oct 16, 2019

Conversation

@gilescope
Copy link
Contributor

gilescope commented Sep 19, 2019

Fixes #61115, fixes #64493.

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Sep 19, 2019

r? @matthewjasper

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

@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Sep 19, 2019

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Sep 19, 2019

I'm sadly not familiar with this code.

r? @matthewjasper seems like a good choice actually :)
cc @nikomatsakis

@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Sep 20, 2019

@gilescope gilescope force-pushed the gilescope:unused-lifetime-warning branch from 80e7585 to 989d6e0 Sep 21, 2019
@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Sep 22, 2019

Anything more to do here or are we good @matthewjasper, @Mark-Simulacrum?
(Will squash the commits into one)

@gilescope gilescope force-pushed the gilescope:unused-lifetime-warning branch from 57f967c to c4b58fd Sep 22, 2019
Copy link
Contributor

matthewjasper left a comment

So, looking into this some more, the issue is that we are linting for the lifetimes on the opaque type generated by the async fn lowering, which the user isn't able to control.
The lifetimes added here should have their IDs added to self.lifetime_uses with LifetimeUseSet::Many.

GenericParamKind::Lifetime { .. } => {
let (name, reg) = Region::early(&self.tcx.hir(), &mut index, &param);
if let hir::ParamName::Plain(param_name) = name {
if param_name.name == kw::UnderscoreLifetime {
// Pick the elided lifetime "definition" if one exists
// and use it to make an elision scope.
elision = Some(reg);
} else {
lifetimes.insert(name, reg);
}
} else {
lifetimes.insert(name, reg);
}
}

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Oct 2, 2019

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-10-02T08:08:53.7033839Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-10-02T08:08:53.7259802Z ##[command]git config gc.auto 0
2019-10-02T08:08:53.7355153Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-10-02T08:08:53.7429159Z ##[command]git config --get-all http.proxy
2019-10-02T08:08:53.7587581Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/64603/merge:refs/remotes/pull/64603/merge
---
2019-10-02T09:14:23.3206947Z .................................................................................................... 1400/9086
2019-10-02T09:14:30.2462474Z .................................................................................................... 1500/9086
2019-10-02T09:14:37.2552180Z .................................................................................................... 1600/9086
2019-10-02T09:14:47.5378607Z .................................................................................................... 1700/9086
2019-10-02T09:14:56.4664080Z i...............i................................................................................... 1800/9086
2019-10-02T09:15:03.7512392Z ...........................................................................................iiiii.... 1900/9086
2019-10-02T09:15:27.4552606Z .................................................................................................... 2100/9086
2019-10-02T09:15:30.0225460Z .................................................................................................... 2200/9086
2019-10-02T09:15:32.7929710Z .................................................................................................... 2300/9086
2019-10-02T09:15:39.6701636Z .................................................................................................... 2400/9086
---
2019-10-02T09:18:46.5013079Z ..............................................................................i...............i..... 4700/9086
2019-10-02T09:18:55.0446872Z .................................................................................................... 4800/9086
2019-10-02T09:19:05.5691500Z .................................................................................................... 4900/9086
2019-10-02T09:19:11.9392917Z .................................................................................................... 5000/9086
2019-10-02T09:19:23.5093253Z .....................................................................ii.ii.......................... 5100/9086
2019-10-02T09:19:33.9196282Z .................................................................................................... 5300/9086
2019-10-02T09:19:43.9389363Z .................................................................................................... 5400/9086
2019-10-02T09:19:51.7508654Z ...................................i................................................................ 5500/9086
2019-10-02T09:19:58.4803338Z .................................................................................................... 5600/9086
2019-10-02T09:19:58.4803338Z .................................................................................................... 5600/9086
2019-10-02T09:20:10.9353194Z .................................................................................................... 5700/9086
2019-10-02T09:20:21.7459312Z ...............................ii...i..ii...........i............................................... 5800/9086
2019-10-02T09:20:44.7685000Z .................................................................................................... 6000/9086
2019-10-02T09:20:54.3332571Z .................................................................................................... 6100/9086
2019-10-02T09:20:54.3332571Z .................................................................................................... 6100/9086
2019-10-02T09:21:11.3428996Z ..................................i..ii............................................................. 6200/9086
2019-10-02T09:21:32.0909594Z ..............................................................................................i..... 6400/9086
2019-10-02T09:21:34.5254006Z .................................................................................................... 6500/9086
2019-10-02T09:21:36.9506412Z ..................................................................i................................. 6600/9086
2019-10-02T09:21:40.1182973Z .................................................................................................... 6700/9086
---
2019-10-02T09:25:57.0618190Z - error: aborting due to previous error
2019-10-02T09:25:57.0618905Z + error: lifetime parameter `'_` only used once
2019-10-02T09:25:57.0619797Z +   --> $DIR/one-use-in-inherent-impl-header.rs:17:10
2019-10-02T09:25:57.0619896Z +    |
2019-10-02T09:25:57.0620378Z + LL | impl Foo<'_> {
2019-10-02T09:25:57.0620455Z +    |          ^^ this lifetime is only used here
2019-10-02T09:25:57.0620572Z + error: aborting due to 2 previous errors
2019-10-02T09:25:57.0620618Z 16 
2019-10-02T09:25:57.0620678Z 17 
2019-10-02T09:25:57.0620710Z 
2019-10-02T09:25:57.0620710Z 
2019-10-02T09:25:57.0620739Z 
2019-10-02T09:25:57.0620788Z The actual stderr differed from the expected stderr.
2019-10-02T09:25:57.0621241Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/single-use-lifetime/one-use-in-inherent-impl-header/one-use-in-inherent-impl-header.stderr
2019-10-02T09:25:57.0621530Z To update references, rerun the tests and pass the `--bless` flag
2019-10-02T09:25:57.0622098Z To only update this specific test, also pass `--test-args single-use-lifetime/one-use-in-inherent-impl-header.rs`
2019-10-02T09:25:57.0622216Z error: 1 errors occurred comparing output.
2019-10-02T09:25:57.0622268Z status: exit code: 1
2019-10-02T09:25:57.0622268Z status: exit code: 1
2019-10-02T09:25:57.0623268Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/single-use-lifetime/one-use-in-inherent-impl-header.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/single-use-lifetime/one-use-in-inherent-impl-header" "-Crpath" "-O" "-Cdebuginfo=0" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/single-use-lifetime/one-use-in-inherent-impl-header/auxiliary" "-A" "unused"
2019-10-02T09:25:57.0623676Z ------------------------------------------
2019-10-02T09:25:57.0623717Z 
2019-10-02T09:25:57.0623979Z ------------------------------------------
2019-10-02T09:25:57.0624032Z stderr:
2019-10-02T09:25:57.0624032Z stderr:
2019-10-02T09:25:57.0624307Z ------------------------------------------
2019-10-02T09:25:57.0624580Z error: lifetime parameter `'f` only used once
2019-10-02T09:25:57.0624897Z   --> /checkout/src/test/ui/single-use-lifetime/one-use-in-inherent-impl-header.rs:12:6
2019-10-02T09:25:57.0624973Z    |
2019-10-02T09:25:57.0625252Z LL | impl<'f> Foo<'f> { //~ ERROR `'f` only used once
2019-10-02T09:25:57.0625511Z    |      ^^      -- ...is used only here
2019-10-02T09:25:57.0625634Z    |      this lifetime...
2019-10-02T09:25:57.0625682Z    |
2019-10-02T09:25:57.0625746Z note: lint level defined here
2019-10-02T09:25:57.0626055Z   --> /checkout/src/test/ui/single-use-lifetime/one-use-in-inherent-impl-header.rs:1:9
2019-10-02T09:25:57.0626055Z   --> /checkout/src/test/ui/single-use-lifetime/one-use-in-inherent-impl-header.rs:1:9
2019-10-02T09:25:57.0626568Z    |
2019-10-02T09:25:57.0626622Z LL | #![deny(single_use_lifetimes)]
2019-10-02T09:25:57.0626700Z    |         ^^^^^^^^^^^^^^^^^^^^
2019-10-02T09:25:57.0626735Z 
2019-10-02T09:25:57.0627078Z error: lifetime parameter `'_` only used once
2019-10-02T09:25:57.0627409Z   --> /checkout/src/test/ui/single-use-lifetime/one-use-in-inherent-impl-header.rs:17:10
2019-10-02T09:25:57.0627481Z    |
2019-10-02T09:25:57.0627718Z LL | impl Foo<'_> {
2019-10-02T09:25:57.0627791Z    |          ^^ this lifetime is only used here
2019-10-02T09:25:57.0627878Z error: aborting due to 2 previous errors
2019-10-02T09:25:57.0627911Z 
2019-10-02T09:25:57.0627941Z 
2019-10-02T09:25:57.0628215Z ------------------------------------------
---
2019-10-02T09:25:57.0677948Z thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:537:22
2019-10-02T09:25:57.0678034Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
2019-10-02T09:25:57.0684750Z 
2019-10-02T09:25:57.0684840Z 
2019-10-02T09:25:57.0686285Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/ui" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "ui" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-6.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--target-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "6.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
2019-10-02T09:25:57.0686651Z 
2019-10-02T09:25:57.0686678Z 
2019-10-02T09:25:57.0692917Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
2019-10-02T09:25:57.0693008Z Build completed unsuccessfully in 1:09:27
2019-10-02T09:25:57.0693008Z Build completed unsuccessfully in 1:09:27
2019-10-02T09:25:57.0748518Z == clock drift check ==
2019-10-02T09:25:57.0764808Z   local time: Wed Oct  2 09:25:57 UTC 2019
2019-10-02T09:25:57.1631682Z   network time: Wed, 02 Oct 2019 09:25:57 GMT
2019-10-02T09:25:57.1639960Z == end clock drift check ==
2019-10-02T09:25:58.1717462Z ##[error]Bash exited with code '1'.
2019-10-02T09:25:58.1764596Z ##[section]Starting: Checkout
2019-10-02T09:25:58.1766330Z ==============================================================================
2019-10-02T09:25:58.1766395Z Task         : Get sources
2019-10-02T09:25:58.1766437Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@gilescope gilescope force-pushed the gilescope:unused-lifetime-warning branch from 190a1ef to 9ba6368 Oct 2, 2019
@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Oct 7, 2019

@rustbot modify labels to +S-waiting-on-review

@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Oct 7, 2019

@rustbot modify labels to -S-waiting-on-author

@JohnCSimon

This comment has been minimized.

Copy link
Member

JohnCSimon commented Oct 12, 2019

Ping from triage
@matthewjasper - can you please review this pr?
thanks.

Copy link
Contributor

matthewjasper left a comment

r=me with typo fixed

src/test/ui/async-await/unused-lifetime.rs Outdated Show resolved Hide resolved
@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Oct 15, 2019

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-10-15T17:01:06.3406029Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-10-15T17:01:06.3495907Z ##[command]git config gc.auto 0
2019-10-15T17:01:06.3584104Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-10-15T17:01:06.3663761Z ##[command]git config --get-all http.proxy
2019-10-15T17:01:06.3808332Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/64603/merge:refs/remotes/pull/64603/merge
---
2019-10-15T17:03:29.8657148Z Attempting with retry: docker build --rm -t rust-ci -f /home/vsts/work/1/s/src/ci/docker/mingw-check/Dockerfile /home/vsts/work/1/s/src/ci/docker
2019-10-15T17:03:29.9721278Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:03:29.9722175Z 
2019-10-15T17:03:30.0013737Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:30.3423474Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:03:31.4847443Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:03:31.4847630Z 
2019-10-15T17:03:31.5044872Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:31.5044872Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:31.7599915Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:03:33.8595124Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:03:33.8595896Z 
2019-10-15T17:03:33.8809916Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:33.8809916Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:34.2156335Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:03:37.3300437Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:03:37.3301069Z 
2019-10-15T17:03:37.3485189Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:37.3485189Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:37.5891587Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:03:41.9928676Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:03:41.9928736Z 
2019-10-15T17:03:41.9928812Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:41.9928812Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:03:41.9928942Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:03:41.9928992Z The command has failed after 5 attempts.
2019-10-15T17:03:41.9990035Z ##[error]Bash exited with code '1'.
2019-10-15T17:03:42.0093694Z ##[section]Starting: Checkout
2019-10-15T17:03:42.0095493Z ==============================================================================
2019-10-15T17:03:42.0095563Z Task         : Get sources
2019-10-15T17:03:42.0095622Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@gilescope gilescope force-pushed the gilescope:unused-lifetime-warning branch from 5842e99 to d82c1c5 Oct 15, 2019
@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Oct 15, 2019

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-10-15T17:07:55.1423032Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-10-15T17:07:55.1433169Z ##[command]git config gc.auto 0
2019-10-15T17:07:55.1435540Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-10-15T17:07:55.1437546Z ##[command]git config --get-all http.proxy
2019-10-15T17:07:55.1440228Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/64603/merge:refs/remotes/pull/64603/merge
---
2019-10-15T17:10:19.3614163Z Attempting with retry: docker build --rm -t rust-ci -f /home/vsts/work/1/s/src/ci/docker/mingw-check/Dockerfile /home/vsts/work/1/s/src/ci/docker
2019-10-15T17:10:19.4503337Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:10:19.4504392Z 
2019-10-15T17:10:19.4717628Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:19.5921216Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:10:20.6838602Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:10:20.6839101Z 
2019-10-15T17:10:20.7115877Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:20.7115877Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:20.7530550Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:10:22.8384846Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:10:22.8386287Z 
2019-10-15T17:10:22.8628899Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:22.8628899Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:22.9102021Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:10:26.0030173Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:10:26.0031167Z 
2019-10-15T17:10:26.0270647Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:26.0270647Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:26.0680858Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:10:30.1545296Z Sending build context to Docker daemon  526.3kB
2019-10-15T17:10:31.1718918Z 
2019-10-15T17:10:31.1721113Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:31.1721113Z Step 1/6 : FROM ubuntu:16.04
2019-10-15T17:10:31.1721357Z received unexpected HTTP status: 503 Service Unavailable
2019-10-15T17:10:31.1721621Z The command has failed after 5 attempts.
2019-10-15T17:10:31.1786476Z ##[error]Bash exited with code '1'.
2019-10-15T17:10:31.1893650Z ##[section]Starting: Checkout
2019-10-15T17:10:31.1895396Z ==============================================================================
2019-10-15T17:10:31.1895474Z Task         : Get sources
2019-10-15T17:10:31.1895522Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Oct 15, 2019

@bors retry

@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Oct 15, 2019

@bors retry

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Oct 15, 2019

@gilescope: 🔑 Insufficient privileges: not in try users

@gilescope

This comment has been minimized.

Copy link
Contributor Author

gilescope commented Oct 15, 2019

@Centril bors is still not playing ball - getting 503s. Could you gently kick bors one more time please?

@Centril Centril closed this Oct 15, 2019
@Centril Centril reopened this Oct 15, 2019
@Centril

This comment has been minimized.

Copy link
Member

Centril commented Oct 15, 2019

@bors r=matthewjasper

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Oct 15, 2019

📌 Commit d82c1c5 has been approved by matthewjasper

Centril added a commit to Centril/rust that referenced this pull request Oct 15, 2019
…r=matthewjasper

Reducing spurious unused lifetime warnings.

Fixes rust-lang#61115, fixes rust-lang#64493.
bors added a commit that referenced this pull request Oct 15, 2019
Rollup of 8 pull requests

Successful merges:

 - #64603 (Reducing spurious unused lifetime warnings.)
 - #65235 (don't assume we can *always* find a return type hint in async fn)
 - #65307 (Try fix incorrect "explicit lifetime name needed")
 - #65389 (Return `false` from `needs_drop` for all zero-sized arrays.)
 - #65402 (Add troubleshooting section to PGO chapter in rustc book.)
 - #65435 (Fix #64153)
 - #65438 (Organize `never_type`  tests)
 - #65444 (Implement AsRef<[T]> for List<T>)

Failed merges:

r? @ghost
tmandry added a commit to tmandry/rust that referenced this pull request Oct 15, 2019
…r=matthewjasper

Reducing spurious unused lifetime warnings.

Fixes rust-lang#61115, fixes rust-lang#64493.
bors added a commit that referenced this pull request Oct 15, 2019
Rollup of 14 pull requests

Successful merges:

 - #64603 (Reducing spurious unused lifetime warnings.)
 - #64623 (Remove last uses of gensyms)
 - #65235 (don't assume we can *always* find a return type hint in async fn)
 - #65242 (Fix suggestion to constrain trait for method to be found)
 - #65265 (Cleanup librustc mir err codes)
 - #65293 (Optimize `try_expand_impl_trait_type`)
 - #65307 (Try fix incorrect "explicit lifetime name needed")
 - #65308 (Add long error explanation for E0574)
 - #65353 (save-analysis: Don't ICE when resolving qualified type paths in struct members)
 - #65389 (Return `false` from `needs_drop` for all zero-sized arrays.)
 - #65402 (Add troubleshooting section to PGO chapter in rustc book.)
 - #65425 (Optimize `BitIter`)
 - #65438 (Organize `never_type`  tests)
 - #65444 (Implement AsRef<[T]> for List<T>)

Failed merges:

 - #65390 (Add long error explanation for E0576)

r? @ghost
@bors bors merged commit d82c1c5 into rust-lang:master Oct 16, 2019
4 checks passed
4 checks passed
pr Build #20191015.52 succeeded
Details
pr (Linux mingw-check) Linux mingw-check succeeded
Details
pr (Linux x86_64-gnu-llvm-6.0) Linux x86_64-gnu-llvm-6.0 succeeded
Details
pr (LinuxTools) LinuxTools succeeded
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
9 participants
You can’t perform that action at this time.