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

Change unused_labels from allow to warn #66325

Merged
merged 2 commits into from Dec 8, 2019
Merged

Change unused_labels from allow to warn #66325

merged 2 commits into from Dec 8, 2019

Conversation

@BartMassey
Copy link

BartMassey commented Nov 12, 2019

Fixes #66324, making the unused_labels lint warn instead of allow by default. I'm told @rust-lang/lang will need to review this, and perhaps will want to do a crater run.

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Nov 12, 2019

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @varkor (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Nov 12, 2019

I personally think a crater run is unnecessary here; unused labels do not seem like a widespread problem that would cause compilation failures to trigger due to deny(warnings) and at any rate, if you use that then you've asked for a compilation failure.

@hellow554

This comment was marked as resolved.

Copy link
Contributor

hellow554 commented Nov 12, 2019

Hey @BartMassey
Can you please edit your first post and use one of the closing keywords github provides to automatically close the corresponding issue when this PR is merged? Thanks :)

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Nov 12, 2019

I already fixed that. :)

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Nov 12, 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-11-12T09:05:13.9835160Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-12T09:05:14.0024337Z ##[command]git config gc.auto 0
2019-11-12T09:05:14.0101243Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-12T09:05:14.0157660Z ##[command]git config --get-all http.proxy
2019-11-12T09:05:14.0299805Z ##[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/66325/merge:refs/remotes/pull/66325/merge
---
2019-11-12T09:34:59.7277294Z    Compiling fmt_macros v0.0.0 (/checkout/src/libfmt_macros)
2019-11-12T09:35:16.5537372Z error: unused label
2019-11-12T09:35:16.5537710Z     --> src/librustc/ty/layout.rs:2560:25
2019-11-12T09:35:16.5538096Z      |
2019-11-12T09:35:16.5538361Z 2560 |                         'iter_fields: for i in 0..fat_pointer_layout.fields.count() {
2019-11-12T09:35:16.5538793Z      |
2019-11-12T09:35:16.5539011Z      = note: `-D unused-labels` implied by `-D warnings`
2019-11-12T09:35:16.5545918Z 
2019-11-12T09:35:34.3924686Z error: aborting due to previous error
---
2019-11-12T09:35:42.4005192Z   local time: Tue Nov 12 09:35:42 UTC 2019
2019-11-12T09:35:42.5491154Z   network time: Tue, 12 Nov 2019 09:35:42 GMT
2019-11-12T09:35:42.5495299Z == end clock drift check ==
2019-11-12T09:35:43.4731838Z 
2019-11-12T09:35:43.4813736Z ##[error]Bash exited with code '1'.
2019-11-12T09:35:43.4840991Z ##[section]Starting: Checkout
2019-11-12T09:35:43.4842740Z ==============================================================================
2019-11-12T09:35:43.4842795Z Task         : Get sources
2019-11-12T09:35:43.4842860Z 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)

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 12, 2019

There you have it. Your lint triggered ^^

'iter_fields: for i in 0..fat_pointer_layout.fields.count() {

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 12, 2019

There's a second one at

'next_block: while let Some(term_point) = self.stack.pop() {

Can you please rebase your (three) commits and then force push them?

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 12, 2019

@hellow554 I seem to be current with rust-lang/rust/master. Did you want me to squash my commits?

I maybe will abandon this if there's a third and try local builds until I have them all sorted. :-(

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 12, 2019

Did you want me to squash my commits?

Yes 😅 sorry.

I maybe will abandon this if there's a third and try local builds until I have them all sorted. :-(

I'm doing a local build right now, that's why I knew that there will be a second error. If you like you can wait, I will tell you either more places or that it's done

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 12, 2019

Yes, I'll finish this tomorrow, as it's bedtime. Thanks much for your help with this!

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Nov 12, 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-11-12T09:53:23.7103066Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-12T09:53:23.7257362Z ##[command]git config gc.auto 0
2019-11-12T09:53:23.7327659Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-12T09:53:23.7382053Z ##[command]git config --get-all http.proxy
2019-11-12T09:53:23.7525745Z ##[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/66325/merge:refs/remotes/pull/66325/merge
---
2019-11-12T10:33:40.2849785Z    Compiling rustc_mir v0.0.0 (/checkout/src/librustc_mir)
2019-11-12T10:33:41.9704946Z error: unused label
2019-11-12T10:33:41.9706747Z    --> src/librustc_mir/borrow_check/nll/type_check/liveness/trace.rs:252:9
2019-11-12T10:33:41.9707308Z     |
2019-11-12T10:33:41.9708053Z 252 |         'next_block: while let Some(term_point) = self.stack.pop() {
2019-11-12T10:33:41.9709125Z     |
2019-11-12T10:33:41.9709788Z     = note: `-D unused-labels` implied by `-D warnings`
2019-11-12T10:33:41.9714059Z 
2019-11-12T10:33:51.0343975Z error: aborting due to previous error
---
2019-11-12T10:35:44.4902934Z   local time: Tue Nov 12 10:35:44 UTC 2019
2019-11-12T10:35:44.7691139Z   network time: Tue, 12 Nov 2019 10:35:44 GMT
2019-11-12T10:35:44.7691825Z == end clock drift check ==
2019-11-12T10:35:47.8469473Z 
2019-11-12T10:35:47.8568570Z ##[error]Bash exited with code '1'.
2019-11-12T10:35:47.8602006Z ##[section]Starting: Checkout
2019-11-12T10:35:47.8603597Z ==============================================================================
2019-11-12T10:35:47.8603773Z Task         : Get sources
2019-11-12T10:35:47.8603827Z 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)

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 12, 2019

This is the last one:

'iter_fields: for i in 0..op.layout.fields.count() {

@BartMassey BartMassey force-pushed the BartMassey:master branch from 6f19b68 to 5b4e764 Nov 12, 2019
@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 12, 2019

Chose to split the label deletions from the default change. That way if it is decided not to change the default we'll have at least got rid of the unused labels. 🙂

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Nov 12, 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-11-12T11:24:43.7726710Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-12T11:24:43.7930358Z ##[command]git config gc.auto 0
2019-11-12T11:24:43.7990806Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-12T11:24:43.8057486Z ##[command]git config --get-all http.proxy
2019-11-12T11:24:43.8212133Z ##[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/66325/merge:refs/remotes/pull/66325/merge
---
2019-11-12T12:23:05.5491116Z .................................................................................................... 1400/9231
2019-11-12T12:23:12.0531995Z .................................................................................................... 1500/9231
2019-11-12T12:23:18.1531403Z .................................................................................................... 1600/9231
2019-11-12T12:23:27.2727522Z .................................................................................................... 1700/9231
2019-11-12T12:23:35.6308270Z ..i................................................................................................. 1800/9231
2019-11-12T12:23:42.3382372Z ......................................................................................iiiii......... 1900/9231
2019-11-12T12:24:03.3142266Z .................................................................................................... 2100/9231
2019-11-12T12:24:05.6873366Z .................................................................................................... 2200/9231
2019-11-12T12:24:08.1616462Z .................................................................................................... 2300/9231
2019-11-12T12:24:17.7123783Z .................................................................................................... 2400/9231
---
2019-11-12T12:27:10.1714385Z ..................................................................................i...............i. 4700/9231
2019-11-12T12:27:17.2946681Z .................................................................................................... 4800/9231
2019-11-12T12:27:26.3464437Z .................................................................................................... 4900/9231
2019-11-12T12:27:31.7432181Z .................................................................................................... 5000/9231
2019-11-12T12:27:43.0615944Z .....................................................................................ii.ii.......... 5100/9231
2019-11-12T12:27:46.8971491Z .i.................................................................................................. 5200/9231
2019-11-12T12:28:01.4880973Z .................................................................................................... 5400/9231
2019-11-12T12:28:08.5261844Z ...................................................................i..................F............. 5500/9231
2019-11-12T12:28:15.9022072Z .................................................................................................... 5600/9231
2019-11-12T12:28:23.6737510Z .................................................................................................... 5700/9231
2019-11-12T12:28:23.6737510Z .................................................................................................... 5700/9231
2019-11-12T12:28:32.5666517Z ....................................................ii...i...ii..........i.......................... 5800/9231
2019-11-12T12:28:55.0488881Z .................................................................................................... 6000/9231
2019-11-12T12:29:02.6249717Z .................................................................................................... 6100/9231
2019-11-12T12:29:02.6249717Z .................................................................................................... 6100/9231
2019-11-12T12:29:07.8444791Z .......................................................................i..ii........................ 6200/9231
2019-11-12T12:29:36.8291243Z .................................................................................................... 6400/9231
2019-11-12T12:29:39.0411245Z .......................................i............................................................ 6500/9231
2019-11-12T12:29:41.3503994Z .................................................................................................... 6600/9231
2019-11-12T12:29:43.7119079Z .......................i............................................................................ 6700/9231
---
2019-11-12T12:34:31.2627564Z 
2019-11-12T12:34:31.2627589Z 
2019-11-12T12:34:31.2627615Z 
2019-11-12T12:34:31.2627680Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2628051Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/for-loop-while/label_break_value/label_break_value.stderr
2019-11-12T12:34:31.2628305Z To update references, rerun the tests and pass the `--bless` flag
2019-11-12T12:34:31.2628603Z To only update this specific test, also pass `--test-args for-loop-while/label_break_value.rs`
2019-11-12T12:34:31.2628825Z error: 1 errors occurred comparing output.
2019-11-12T12:34:31.2628892Z status: exit code: 0
2019-11-12T12:34:31.2628892Z status: exit code: 0
2019-11-12T12:34:31.2629707Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/for-loop-while/label_break_value.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/for-loop-while/label_break_value/a" "-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/for-loop-while/label_break_value/auxiliary"
2019-11-12T12:34:31.2630342Z ------------------------------------------
2019-11-12T12:34:31.2630370Z 
2019-11-12T12:34:31.2630728Z ------------------------------------------
2019-11-12T12:34:31.2630771Z stderr:
---
2019-11-12T12:34:31.2632146Z normalized stderr:
2019-11-12T12:34:31.2632177Z warning: unused label
2019-11-12T12:34:31.2632348Z   --> $DIR/loop-label-shadowing.rs:8:5
2019-11-12T12:34:31.2632382Z    |
2019-11-12T12:34:31.2632537Z LL |     'foo: for i in &[1, 2, 3] {
2019-11-12T12:34:31.2632626Z    |
2019-11-12T12:34:31.2632659Z    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2632682Z 
2019-11-12T12:34:31.2632702Z 
2019-11-12T12:34:31.2632702Z 
2019-11-12T12:34:31.2632738Z 
2019-11-12T12:34:31.2632756Z 
2019-11-12T12:34:31.2632796Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2633043Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/for-loop-while/loop-label-shadowing/loop-label-shadowing.stderr
2019-11-12T12:34:31.2633255Z To update references, rerun the tests and pass the `--bless` flag
2019-11-12T12:34:31.2633458Z To only update this specific test, also pass `--test-args for-loop-while/loop-label-shadowing.rs`
2019-11-12T12:34:31.2633536Z error: 1 errors occurred comparing output.
2019-11-12T12:34:31.2633569Z status: exit code: 0
2019-11-12T12:34:31.2633569Z status: exit code: 0
2019-11-12T12:34:31.2634222Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/for-loop-while/loop-label-shadowing.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/for-loop-while/loop-label-shadowing/a" "-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/for-loop-while/loop-label-shadowing/auxiliary"
2019-11-12T12:34:31.2634547Z ------------------------------------------
2019-11-12T12:34:31.2634592Z 
2019-11-12T12:34:31.2634770Z ------------------------------------------
2019-11-12T12:34:31.2634808Z stderr:
2019-11-12T12:34:31.2634808Z stderr:
2019-11-12T12:34:31.2634993Z ------------------------------------------
2019-11-12T12:34:31.2635032Z warning: unused label
2019-11-12T12:34:31.2635227Z   --> /checkout/src/test/ui/for-loop-while/loop-label-shadowing.rs:8:5
2019-11-12T12:34:31.2635284Z    |
2019-11-12T12:34:31.2635572Z LL |     'foo: for i in &[1, 2, 3] {
2019-11-12T12:34:31.2635643Z    |
2019-11-12T12:34:31.2635694Z    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2635719Z 
2019-11-12T12:34:31.2635740Z 
---
2019-11-12T12:34:31.2636890Z 
2019-11-12T12:34:31.2636933Z + warning: unused label
2019-11-12T12:34:31.2637154Z +   --> $DIR/hygienic-labels-in-let.rs:15:9
2019-11-12T12:34:31.2637201Z +    |
2019-11-12T12:34:31.2637415Z + LL |         'x: loop { $e }
2019-11-12T12:34:31.2637506Z + ...
2019-11-12T12:34:31.2637506Z + ...
2019-11-12T12:34:31.2637724Z + LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2638020Z +    |
2019-11-12T12:34:31.2638082Z +    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2638127Z + 
2019-11-12T12:34:31.2638169Z + warning: unused label
2019-11-12T12:34:31.2638169Z + warning: unused label
2019-11-12T12:34:31.2638386Z +   --> $DIR/hygienic-labels-in-let.rs:15:9
2019-11-12T12:34:31.2638447Z +    |
2019-11-12T12:34:31.2638649Z + LL |         'x: loop { $e }
2019-11-12T12:34:31.2638754Z + ...
2019-11-12T12:34:31.2638754Z + ...
2019-11-12T12:34:31.2638958Z + LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2639254Z + 
2019-11-12T12:34:31.2639297Z + warning: unused label
2019-11-12T12:34:31.2639511Z +   --> $DIR/hygienic-labels-in-let.rs:26:9
2019-11-12T12:34:31.2639558Z +    |
2019-11-12T12:34:31.2639558Z +    |
2019-11-12T12:34:31.2639786Z + LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2639873Z + ...
2019-11-12T12:34:31.2639873Z + ...
2019-11-12T12:34:31.2640219Z + LL |             while_true!(break 'x);
2019-11-12T12:34:31.2640452Z + 
2019-11-12T12:34:31.2640486Z + warning: unused label
2019-11-12T12:34:31.2640667Z +   --> $DIR/hygienic-labels-in-let.rs:38:9
2019-11-12T12:34:31.2640704Z +    |
2019-11-12T12:34:31.2640704Z +    |
2019-11-12T12:34:31.2640875Z + LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2640960Z + ...
2019-11-12T12:34:31.2640960Z + ...
2019-11-12T12:34:31.2641126Z + LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2641536Z + 
2019-11-12T12:34:31.2641536Z + 
2019-11-12T12:34:31.2641722Z 1 warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2641904Z 2   --> $DIR/hygienic-labels-in-let.rs:15:9
2019-11-12T12:34:31.2641960Z 
2019-11-12T12:34:31.2641980Z 
2019-11-12T12:34:31.2642015Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2642287Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels-in-let/hygienic-labels-in-let.stderr
2019-11-12T12:34:31.2642287Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels-in-let/hygienic-labels-in-let.stderr
2019-11-12T12:34:31.2642478Z To update references, rerun the tests and pass the `--bless` flag
2019-11-12T12:34:31.2642800Z To only update this specific test, also pass `--test-args hygiene/hygienic-labels-in-let.rs`
2019-11-12T12:34:31.2642876Z error: 1 errors occurred comparing output.
2019-11-12T12:34:31.2642909Z status: exit code: 0
2019-11-12T12:34:31.2642909Z status: exit code: 0
2019-11-12T12:34:31.2643543Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/hygiene/hygienic-labels-in-let.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels-in-let/a" "-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/hygiene/hygienic-labels-in-let/auxiliary"
2019-11-12T12:34:31.2644071Z ------------------------------------------
2019-11-12T12:34:31.2644098Z 
2019-11-12T12:34:31.2644258Z ------------------------------------------
2019-11-12T12:34:31.2644316Z stderr:
2019-11-12T12:34:31.2644316Z stderr:
2019-11-12T12:34:31.2644477Z ------------------------------------------
2019-11-12T12:34:31.2644513Z warning: unused label
2019-11-12T12:34:31.2644707Z   --> /checkout/src/test/ui/hygiene/hygienic-labels-in-let.rs:15:9
2019-11-12T12:34:31.2644745Z    |
2019-11-12T12:34:31.2644897Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2644978Z ...
2019-11-12T12:34:31.2644978Z ...
2019-11-12T12:34:31.2645131Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2645355Z    |
2019-11-12T12:34:31.2645388Z    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2645418Z 
2019-11-12T12:34:31.2645449Z warning: unused label
2019-11-12T12:34:31.2645449Z warning: unused label
2019-11-12T12:34:31.2645647Z   --> /checkout/src/test/ui/hygiene/hygienic-labels-in-let.rs:15:9
2019-11-12T12:34:31.2645683Z    |
2019-11-12T12:34:31.2646008Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2646091Z ...
2019-11-12T12:34:31.2646091Z ...
2019-11-12T12:34:31.2646666Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2646966Z 
2019-11-12T12:34:31.2647009Z warning: unused label
2019-11-12T12:34:31.2647248Z   --> /checkout/src/test/ui/hygiene/hygienic-labels-in-let.rs:26:9
2019-11-12T12:34:31.2647312Z    |
2019-11-12T12:34:31.2647312Z    |
2019-11-12T12:34:31.2647519Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2647623Z ...
2019-11-12T12:34:31.2647623Z ...
2019-11-12T12:34:31.2647829Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2648107Z 
2019-11-12T12:34:31.2648166Z warning: unused label
2019-11-12T12:34:31.2648407Z   --> /checkout/src/test/ui/hygiene/hygienic-labels-in-let.rs:38:9
2019-11-12T12:34:31.2648454Z    |
2019-11-12T12:34:31.2648454Z    |
2019-11-12T12:34:31.2648672Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2648759Z ...
2019-11-12T12:34:31.2648759Z ...
2019-11-12T12:34:31.2648976Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2649265Z 
2019-11-12T12:34:31.2649265Z 
2019-11-12T12:34:31.2649501Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2649808Z    |
2019-11-12T12:34:31.2649808Z    |
2019-11-12T12:34:31.2650139Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2650319Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2650354Z ...
2019-11-12T12:34:31.2650500Z LL |         'x: loop {
2019-11-12T12:34:31.2650656Z    |         -- first declared here
2019-11-12T12:34:31.2650864Z LL |             // this 'x should refer to the outer loop, lexically
2019-11-12T12:34:31.2651194Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2651406Z 
2019-11-12T12:34:31.2651406Z 
2019-11-12T12:34:31.2651676Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2651964Z    |
2019-11-12T12:34:31.2651964Z    |
2019-11-12T12:34:31.2652135Z LL |         'x: loop {
2019-11-12T12:34:31.2652302Z    |         -- first declared here
2019-11-12T12:34:31.2652338Z ...
2019-11-12T12:34:31.2652518Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2652695Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2652721Z 
2019-11-12T12:34:31.2652914Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2653247Z    |
2019-11-12T12:34:31.2653247Z    |
2019-11-12T12:34:31.2653436Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2653617Z    |         -- first declared here
2019-11-12T12:34:31.2653653Z ...
2019-11-12T12:34:31.2653812Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2654011Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2654039Z 
2019-11-12T12:34:31.2654233Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2654481Z    |
2019-11-12T12:34:31.2654481Z    |
2019-11-12T12:34:31.2654638Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2654811Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2654862Z ...
2019-11-12T12:34:31.2655017Z LL |         'x: loop {
2019-11-12T12:34:31.2655180Z    |         -- first declared here
2019-11-12T12:34:31.2655230Z ...
2019-11-12T12:34:31.2655391Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2655611Z 
2019-11-12T12:34:31.2655611Z 
2019-11-12T12:34:31.2655818Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2656224Z    |
2019-11-12T12:34:31.2656224Z    |
2019-11-12T12:34:31.2656818Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2656912Z    |         |
2019-11-12T12:34:31.2656956Z    |         first declared here
2019-11-12T12:34:31.2656956Z    |         first declared here
2019-11-12T12:34:31.2657192Z    |         lifetime 'x already in scope
2019-11-12T12:34:31.2657238Z ...
2019-11-12T12:34:31.2657439Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2657720Z 
2019-11-12T12:34:31.2657720Z 
2019-11-12T12:34:31.2657960Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2658295Z    |
2019-11-12T12:34:31.2658295Z    |
2019-11-12T12:34:31.2658506Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2658737Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2658802Z ...
2019-11-12T12:34:31.2659020Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2659238Z    |         -- first declared here
2019-11-12T12:34:31.2659301Z ...
2019-11-12T12:34:31.2659528Z LL |             loop_x!(break 'x);
2019-11-12T12:34:31.2659813Z 
2019-11-12T12:34:31.2659813Z 
2019-11-12T12:34:31.2660210Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2660446Z    |
2019-11-12T12:34:31.2660446Z    |
2019-11-12T12:34:31.2660615Z LL |         'x: loop {
2019-11-12T12:34:31.2660784Z    |         -- first declared here
2019-11-12T12:34:31.2660820Z ...
2019-11-12T12:34:31.2660982Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2661173Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2661208Z 
2019-11-12T12:34:31.2661403Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2661656Z    |
2019-11-12T12:34:31.2661656Z    |
2019-11-12T12:34:31.2661870Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2662164Z    |         -- first declared here
2019-11-12T12:34:31.2662213Z ...
2019-11-12T12:34:31.2662572Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2662743Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2662785Z 
2019-11-12T12:34:31.2663173Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2663463Z    |
2019-11-12T12:34:31.2663463Z    |
2019-11-12T12:34:31.2663627Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2663789Z    |         -- first declared here
2019-11-12T12:34:31.2663824Z ...
2019-11-12T12:34:31.2664149Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2664322Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2664349Z 
2019-11-12T12:34:31.2664552Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2664791Z    |
2019-11-12T12:34:31.2664791Z    |
2019-11-12T12:34:31.2664947Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2665125Z    |         -- first declared here
2019-11-12T12:34:31.2665160Z ...
2019-11-12T12:34:31.2665317Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2665507Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2665533Z 
2019-11-12T12:34:31.2665721Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2666142Z    |
2019-11-12T12:34:31.2666142Z    |
2019-11-12T12:34:31.2667061Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2667299Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2667363Z ...
2019-11-12T12:34:31.2667553Z LL |         'x: loop {
2019-11-12T12:34:31.2667754Z    |         -- first declared here
2019-11-12T12:34:31.2667816Z ...
2019-11-12T12:34:31.2668023Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2668299Z 
2019-11-12T12:34:31.2668299Z 
2019-11-12T12:34:31.2668554Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2668891Z    |
2019-11-12T12:34:31.2668891Z    |
2019-11-12T12:34:31.2669103Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2669305Z    |         -- first declared here
2019-11-12T12:34:31.2669349Z ...
2019-11-12T12:34:31.2669569Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2669786Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2669832Z ...
2019-11-12T12:34:31.2670192Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2670426Z 
2019-11-12T12:34:31.2670426Z 
2019-11-12T12:34:31.2670607Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2670850Z    |
2019-11-12T12:34:31.2670850Z    |
2019-11-12T12:34:31.2671179Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2671349Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2671383Z ...
2019-11-12T12:34:31.2671530Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2671678Z    |         -- first declared here
2019-11-12T12:34:31.2671725Z ...
2019-11-12T12:34:31.2671877Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2672087Z 
2019-11-12T12:34:31.2672087Z 
2019-11-12T12:34:31.2672263Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2672481Z    |
2019-11-12T12:34:31.2672481Z    |
2019-11-12T12:34:31.2672638Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2672784Z    |         -- first declared here
2019-11-12T12:34:31.2672817Z ...
2019-11-12T12:34:31.2672983Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2673236Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2673279Z ...
2019-11-12T12:34:31.2673479Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2673678Z 
2019-11-12T12:34:31.2673678Z 
2019-11-12T12:34:31.2673849Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2674075Z    |
2019-11-12T12:34:31.2674075Z    |
2019-11-12T12:34:31.2674227Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2674396Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2674507Z ...
2019-11-12T12:34:31.2674681Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2674830Z    |         -- first declared here
2019-11-12T12:34:31.2674878Z ...
2019-11-12T12:34:31.2675029Z LL |             while_true!(break 'x);
2019-11-12T12:34:31.2675245Z 
2019-11-12T12:34:31.2675245Z 
2019-11-12T12:34:31.2675421Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2675662Z    |
2019-11-12T12:34:31.2675662Z    |
2019-11-12T12:34:31.2675813Z LL |         'x: loop {
2019-11-12T12:34:31.2676149Z    |         -- first declared here
2019-11-12T12:34:31.2676340Z ...
2019-11-12T12:34:31.2676798Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2677014Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2677047Z 
2019-11-12T12:34:31.2677300Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2677602Z    |
2019-11-12T12:34:31.2677602Z    |
2019-11-12T12:34:31.2677795Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2678013Z    |         -- first declared here
2019-11-12T12:34:31.2678057Z ...
2019-11-12T12:34:31.2680845Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2682631Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2682671Z 
2019-11-12T12:34:31.2684196Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2687524Z    |
2019-11-12T12:34:31.2687524Z    |
2019-11-12T12:34:31.2688824Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2690346Z    |         -- first declared here
2019-11-12T12:34:31.2690426Z ...
2019-11-12T12:34:31.2691204Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2691600Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2691629Z 
2019-11-12T12:34:31.2691859Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2692103Z    |
2019-11-12T12:34:31.2692103Z    |
2019-11-12T12:34:31.2692284Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2692454Z    |         -- first declared here
2019-11-12T12:34:31.2692497Z ...
2019-11-12T12:34:31.2692679Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2692864Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2692892Z 
2019-11-12T12:34:31.2693087Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2693343Z    |
2019-11-12T12:34:31.2693343Z    |
2019-11-12T12:34:31.2693508Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2693691Z    |         -- first declared here
2019-11-12T12:34:31.2693728Z ...
2019-11-12T12:34:31.2693895Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2694092Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2694127Z 
2019-11-12T12:34:31.2694326Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2694580Z    |
2019-11-12T12:34:31.2694580Z    |
2019-11-12T12:34:31.2694882Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2695108Z    |         -- first declared here
2019-11-12T12:34:31.2695162Z ...
2019-11-12T12:34:31.2695330Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2695508Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2695536Z 
2019-11-12T12:34:31.2695747Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2696169Z    |
2019-11-12T12:34:31.2696169Z    |
2019-11-12T12:34:31.2696520Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2697115Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2697293Z ...
2019-11-12T12:34:31.2697612Z LL |         'x: loop {
2019-11-12T12:34:31.2697837Z    |         -- first declared here
2019-11-12T12:34:31.2697883Z ...
2019-11-12T12:34:31.2698088Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2698389Z 
2019-11-12T12:34:31.2698389Z 
2019-11-12T12:34:31.2698629Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2698937Z    |
2019-11-12T12:34:31.2698937Z    |
2019-11-12T12:34:31.2699134Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2699338Z    |         -- first declared here
2019-11-12T12:34:31.2699399Z ...
2019-11-12T12:34:31.2699606Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2699820Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2699881Z ...
2019-11-12T12:34:31.2700088Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2700516Z 
2019-11-12T12:34:31.2700516Z 
2019-11-12T12:34:31.2700891Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2701113Z    |
2019-11-12T12:34:31.2701113Z    |
2019-11-12T12:34:31.2701293Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2701798Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2701849Z ...
2019-11-12T12:34:31.2702110Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2702319Z    |         -- first declared here
2019-11-12T12:34:31.2702364Z ...
2019-11-12T12:34:31.2702569Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2702855Z 
2019-11-12T12:34:31.2702855Z 
2019-11-12T12:34:31.2703347Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2703684Z    |
2019-11-12T12:34:31.2703684Z    |
2019-11-12T12:34:31.2703883Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2704089Z    |         -- first declared here
2019-11-12T12:34:31.2704151Z ...
2019-11-12T12:34:31.2704354Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2704576Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2704638Z ...
2019-11-12T12:34:31.2704847Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2705114Z 
2019-11-12T12:34:31.2705114Z 
2019-11-12T12:34:31.2705486Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2705695Z    |
2019-11-12T12:34:31.2705695Z    |
2019-11-12T12:34:31.2706237Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2706439Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2706474Z ...
2019-11-12T12:34:31.2707080Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2707312Z    |         -- first declared here
2019-11-12T12:34:31.2707357Z ...
2019-11-12T12:34:31.2707579Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2707851Z 
2019-11-12T12:34:31.2707851Z 
2019-11-12T12:34:31.2709163Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2709646Z    |
2019-11-12T12:34:31.2709646Z    |
2019-11-12T12:34:31.2709861Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2711682Z    |         -- first declared here
2019-11-12T12:34:31.2711729Z ...
2019-11-12T12:34:31.2711891Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2712586Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2712659Z ...
2019-11-12T12:34:31.2713695Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2714337Z 
2019-11-12T12:34:31.2714337Z 
2019-11-12T12:34:31.2714576Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2714809Z    |
2019-11-12T12:34:31.2714809Z    |
2019-11-12T12:34:31.2714969Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2715127Z    |         ^^ lifetime 'x already in scope
2019-11-12T12:34:31.2715161Z ...
2019-11-12T12:34:31.2715322Z LL |         'x: for _ in 0..1 {
2019-11-12T12:34:31.2715470Z    |         -- first declared here
2019-11-12T12:34:31.2715502Z ...
2019-11-12T12:34:31.2715666Z LL |             run_once!(continue 'x);
2019-11-12T12:34:31.2716042Z 
2019-11-12T12:34:31.2716063Z 
2019-11-12T12:34:31.2716239Z ------------------------------------------
2019-11-12T12:34:31.2716263Z 
2019-11-12T12:34:31.2716263Z 
2019-11-12T12:34:31.2716283Z 
2019-11-12T12:34:31.2716455Z ---- [ui] ui/hygiene/hygienic-labels.rs stdout ----
2019-11-12T12:34:31.2717065Z diff of stderr:
2019-11-12T12:34:31.2717099Z 
2019-11-12T12:34:31.2717142Z + warning: unused label
2019-11-12T12:34:31.2717402Z +   --> $DIR/hygienic-labels.rs:12:9
2019-11-12T12:34:31.2717465Z +    |
2019-11-12T12:34:31.2717664Z + LL |         'x: loop { $e }
2019-11-12T12:34:31.2717781Z + ...
2019-11-12T12:34:31.2717781Z + ...
2019-11-12T12:34:31.2717985Z + LL |         loop_x!(break 'x);
2019-11-12T12:34:31.2718263Z +    |
2019-11-12T12:34:31.2718326Z +    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2718369Z + 
2019-11-12T12:34:31.2718412Z + warning: unused label
2019-11-12T12:34:31.2718412Z + warning: unused label
2019-11-12T12:34:31.2725404Z +   --> $DIR/hygienic-labels.rs:12:9
2019-11-12T12:34:31.2725691Z +    |
2019-11-12T12:34:31.2726861Z + LL |         'x: loop { $e }
2019-11-12T12:34:31.2727005Z + ...
2019-11-12T12:34:31.2727005Z + ...
2019-11-12T12:34:31.2727258Z + LL |         loop_x!(break 'x);
2019-11-12T12:34:31.2727565Z + 
2019-11-12T12:34:31.2727609Z + warning: unused label
2019-11-12T12:34:31.2727823Z +   --> $DIR/hygienic-labels.rs:37:9
2019-11-12T12:34:31.2727886Z +    |
2019-11-12T12:34:31.2727886Z +    |
2019-11-12T12:34:31.2728113Z + LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2728204Z + ...
2019-11-12T12:34:31.2728204Z + ...
2019-11-12T12:34:31.2728426Z + LL |         while_x!(break 'x);
2019-11-12T12:34:31.2728703Z + 
2019-11-12T12:34:31.2728762Z + warning: unused label
2019-11-12T12:34:31.2728968Z +   --> $DIR/hygienic-labels.rs:23:9
2019-11-12T12:34:31.2729014Z +    |
2019-11-12T12:34:31.2729014Z +    |
2019-11-12T12:34:31.2729238Z + LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2729327Z + ...
2019-11-12T12:34:31.2729327Z + ...
2019-11-12T12:34:31.2729532Z + LL |         run_once!(continue 'x);
2019-11-12T12:34:31.2729841Z + 
2019-11-12T12:34:31.2729841Z + 
2019-11-12T12:34:31.2730282Z 1 warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2730802Z 2   --> $DIR/hygienic-labels.rs:12:9
2019-11-12T12:34:31.2731000Z 
2019-11-12T12:34:31.2731033Z 
2019-11-12T12:34:31.2731086Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2731361Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels/hygienic-labels.stderr
2019-11-12T12:34:31.2731361Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels/hygienic-labels.stderr
2019-11-12T12:34:31.2731555Z To update references, rerun the tests and pass the `--bless` flag
2019-11-12T12:34:31.2731782Z To only update this specific test, also pass `--test-args hygiene/hygienic-labels.rs`
2019-11-12T12:34:31.2731847Z error: 1 errors occurred comparing output.
2019-11-12T12:34:31.2731897Z status: exit code: 0
2019-11-12T12:34:31.2731897Z status: exit code: 0
2019-11-12T12:34:31.2732597Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/hygiene/hygienic-labels.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/hygiene/hygienic-labels/a" "-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/hygiene/hygienic-labels/auxiliary"
2019-11-12T12:34:31.2732887Z ------------------------------------------
2019-11-12T12:34:31.2732916Z 
2019-11-12T12:34:31.2733099Z ------------------------------------------
2019-11-12T12:34:31.2733155Z stderr:
2019-11-12T12:34:31.2733155Z stderr:
2019-11-12T12:34:31.2733327Z ------------------------------------------
2019-11-12T12:34:31.2733368Z warning: unused label
2019-11-12T12:34:31.2733575Z   --> /checkout/src/test/ui/hygiene/hygienic-labels.rs:12:9
2019-11-12T12:34:31.2733624Z    |
2019-11-12T12:34:31.2733793Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2733880Z ...
2019-11-12T12:34:31.2733880Z ...
2019-11-12T12:34:31.2734045Z LL |         loop_x!(break 'x);
2019-11-12T12:34:31.2734287Z    |
2019-11-12T12:34:31.2734368Z    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2734395Z 
2019-11-12T12:34:31.2734446Z warning: unused label
2019-11-12T12:34:31.2734446Z warning: unused label
2019-11-12T12:34:31.2734655Z   --> /checkout/src/test/ui/hygiene/hygienic-labels.rs:12:9
2019-11-12T12:34:31.2734694Z    |
2019-11-12T12:34:31.2734853Z LL |         'x: loop { $e }
2019-11-12T12:34:31.2734939Z ...
2019-11-12T12:34:31.2734939Z ...
2019-11-12T12:34:31.2735104Z LL |         loop_x!(break 'x);
2019-11-12T12:34:31.2735334Z 
2019-11-12T12:34:31.2735370Z warning: unused label
2019-11-12T12:34:31.2735561Z   --> /checkout/src/test/ui/hygiene/hygienic-labels.rs:37:9
2019-11-12T12:34:31.2735620Z    |
2019-11-12T12:34:31.2735620Z    |
2019-11-12T12:34:31.2735795Z LL |         'x: while 1 + 1 == 2 { $e }
2019-11-12T12:34:31.2736058Z ...
2019-11-12T12:34:31.2736058Z ...
2019-11-12T12:34:31.2736222Z LL |         while_x!(break 'x);
2019-11-12T12:34:31.2737027Z 
2019-11-12T12:34:31.2737096Z warning: unused label
2019-11-12T12:34:31.2737392Z   --> /checkout/src/test/ui/hygiene/hygienic-labels.rs:23:9
2019-11-12T12:34:31.2737443Z    |
2019-11-12T12:34:31.2737443Z    |
2019-11-12T12:34:31.2737668Z LL |         'x: for _ in 0..1 { $e }
2019-11-12T12:34:31.2737757Z ...
2019-11-12T12:34:31.2737757Z ...
2019-11-12T12:34:31.2737977Z LL |         run_once!(continue 'x);
2019-11-12T12:34:31.2738246Z 
2019-11-12T12:34:31.2738246Z 
2019-11-12T12:34:31.2738484Z warning: label name `'x` shadows a label name that is already in scope
2019-11-12T12:34:31.2738793Z    |
---
2019-11-12T12:34:31.2803700Z 
2019-11-12T12:34:31.2803730Z + warning: unused label
2019-11-12T12:34:31.2803900Z +   --> $DIR/macro-lifetime-used-with-labels.rs:21:9
2019-11-12T12:34:31.2803952Z +    |
2019-11-12T12:34:31.2804093Z + LL |         'b: loop {
2019-11-12T12:34:31.2804158Z + ...
2019-11-12T12:34:31.2804158Z + ...
2019-11-12T12:34:31.2804313Z + LL |         br2!('b);
2019-11-12T12:34:31.2804579Z +    |
2019-11-12T12:34:31.2804630Z +    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2804662Z + 
2019-11-12T12:34:31.2804662Z + 
2019-11-12T12:34:31.2804866Z 1 warning: label name `'b` shadows a label name that is already in scope
2019-11-12T12:34:31.2805086Z 3    |
2019-11-12T12:34:31.2805112Z 
2019-11-12T12:34:31.2805131Z 
2019-11-12T12:34:31.2805180Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2805180Z The actual stderr differed from the expected stderr.
2019-11-12T12:34:31.2805424Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/macros/macro-lifetime-used-with-labels/macro-lifetime-used-with-labels.stderr
2019-11-12T12:34:31.2805604Z To update references, rerun the tests and pass the `--bless` flag
2019-11-12T12:34:31.2805823Z To only update this specific test, also pass `--test-args macros/macro-lifetime-used-with-labels.rs`
2019-11-12T12:34:31.2805883Z error: 1 errors occurred comparing output.
2019-11-12T12:34:31.2805915Z status: exit code: 0
2019-11-12T12:34:31.2805915Z status: exit code: 0
2019-11-12T12:34:31.2806919Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/macros/macro-lifetime-used-with-labels.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/macros/macro-lifetime-used-with-labels/a" "-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/macros/macro-lifetime-used-with-labels/auxiliary"
2019-11-12T12:34:31.2807291Z ------------------------------------------
2019-11-12T12:34:31.2807326Z 
2019-11-12T12:34:31.2807542Z ------------------------------------------
2019-11-12T12:34:31.2807607Z stderr:
2019-11-12T12:34:31.2807607Z stderr:
2019-11-12T12:34:31.2807817Z ------------------------------------------
2019-11-12T12:34:31.2807865Z warning: unused label
2019-11-12T12:34:31.2808136Z   --> /checkout/src/test/ui/macros/macro-lifetime-used-with-labels.rs:21:9
2019-11-12T12:34:31.2808187Z    |
2019-11-12T12:34:31.2808443Z LL |         'b: loop { //~ WARNING `'b` shadows a label name that is already in scope
2019-11-12T12:34:31.2808555Z ...
2019-11-12T12:34:31.2808555Z ...
2019-11-12T12:34:31.2808751Z LL |         br2!('b);
2019-11-12T12:34:31.2809034Z    |
2019-11-12T12:34:31.2809080Z    = note: `#[warn(unused_labels)]` on by default
2019-11-12T12:34:31.2809111Z 
2019-11-12T12:34:31.2809111Z 
2019-11-12T12:34:31.2809369Z warning: label name `'b` shadows a label name that is already in scope
2019-11-12T12:34:31.2809669Z    |
2019-11-12T12:34:31.2809669Z    |
2019-11-12T12:34:31.2809935Z LL |         'b: loop { //~ WARNING `'b` shadows a label name that is already in scope
2019-11-12T12:34:31.2810310Z    |         ^^ lifetime 'b already in scope
2019-11-12T12:34:31.2810483Z LL |     'b: loop {
2019-11-12T12:34:31.2810647Z    |     -- first declared here
2019-11-12T12:34:31.2810647Z    |     -- first declared here
2019-11-12T12:34:31.2810788Z LL |         br2!('b);
2019-11-12T12:34:31.2810984Z 
2019-11-12T12:34:31.2811003Z 
2019-11-12T12:34:31.2811245Z ------------------------------------------
2019-11-12T12:34:31.2811277Z 
---
2019-11-12T12:34:31.2815690Z thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:537:22
2019-11-12T12:34:31.2820560Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
2019-11-12T12:34:31.2820815Z 
2019-11-12T12:34:31.2820952Z 
2019-11-12T12:34:31.2822604Z 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-11-12T12:34:31.2823527Z 
2019-11-12T12:34:31.2832382Z 
2019-11-12T12:34:31.2832527Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
2019-11-12T12:34:31.2832598Z Build completed unsuccessfully in 1:03:29
2019-11-12T12:34:31.2832598Z Build completed unsuccessfully in 1:03:29
2019-11-12T12:34:31.2832773Z == clock drift check ==
2019-11-12T12:34:31.2832898Z   local time: Tue Nov 12 12:34:31 UTC 2019
2019-11-12T12:34:31.5588031Z   network time: Tue, 12 Nov 2019 12:34:31 GMT
2019-11-12T12:34:32.1382034Z == end clock drift check ==
2019-11-12T12:34:32.4183456Z 
2019-11-12T12:34:32.4255197Z ##[error]Bash exited with code '1'.
2019-11-12T12:34:32.4338298Z ##[section]Starting: Checkout
2019-11-12T12:34:32.4340321Z ==============================================================================
2019-11-12T12:34:32.4340362Z Task         : Get sources
2019-11-12T12:34:32.4340418Z 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)

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 12, 2019

Sorry, I only did the build itself, not the tests :/ But should be easy for you to add #![allow(unused_labels)] in the first line (and add one to the linenumbers in the tests)

@varkor

This comment has been minimized.

Copy link
Member

varkor commented Nov 12, 2019

@BartMassey: it would be easier for you to run all the tests locally with x.py test src/test/ui --bless, rather than relying on CI.

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 12, 2019

Working. Thanks!

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 12, 2019

OK, I've managed to reproduce the test failures.

Is it better to just stick #![allow(unused_labels)] in there, or is it better to fix the tests? The first example I'm looking at is src/test/ui/for-loop-while/label_break_value.rs line 80, and the label there looks completely gratuitous. It would take a while to go case-by-case but I'm willing to try it if it seems like a good idea.

@varkor

This comment has been minimized.

Copy link
Member

varkor commented Nov 12, 2019

Is it better to just stick #![allow(unused_labels)] in there, or is it better to fix the tests?

I don't have a strong preference (slightly towards removing unnecessary labels, as long as they don't seem to be the point of the test) — so whichever is more convenient.

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 13, 2019

OK, I have completed fixes for test/ui. Should I also check all the rest of the code and tests in rust-lang/rust? Or is this beyond scope for this PR?

@hellow554

This comment has been minimized.

Copy link
Contributor

hellow554 commented Nov 13, 2019

@BartMassey the CI must be green in order to merge your PR, so everything must be fixed :)

@BartMassey BartMassey force-pushed the BartMassey:master branch from 5b4e764 to 60a6f2c Nov 13, 2019
@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 13, 2019

@hellow554 Yes; was just wondering how much the CI checks? Rustdoc? Rustfmt? Clippy? Guess I'll try again and see where we are.

Software development is hard. 😅 Thanks for all the help!

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Nov 13, 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-11-13T07:46:54.1258440Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-11-13T07:46:54.1430935Z ##[command]git config gc.auto 0
2019-11-13T07:46:54.1504534Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-11-13T07:46:54.1542853Z ##[command]git config --get-all http.proxy
2019-11-13T07:46:54.1725938Z ##[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/66325/merge:refs/remotes/pull/66325/merge
---
2019-11-13T08:46:09.1717442Z .................................................................................................... 1500/9234
2019-11-13T08:46:15.3669548Z .................................................................................................... 1600/9234
2019-11-13T08:46:24.6619457Z .................................................................................................... 1700/9234
2019-11-13T08:46:33.1730940Z ...i................................................................................................ 1800/9234
2019-11-13T08:46:39.9451669Z .......................................................................................iiiii........ 1900/9234
2019-11-13T08:47:01.6744785Z .................................................................................................... 2100/9234
2019-11-13T08:47:04.0667980Z .................................................................................................... 2200/9234
2019-11-13T08:47:06.6044465Z .................................................................................................... 2300/9234
2019-11-13T08:47:16.3877499Z .................................................................................................... 2400/9234
---
2019-11-13T08:50:10.5544402Z ....................................................................................i............... 4700/9234
2019-11-13T08:50:17.6676001Z i................................................................................................... 4800/9234
2019-11-13T08:50:26.9770043Z .................................................................................................... 4900/9234
2019-11-13T08:50:32.2662413Z .................................................................................................... 5000/9234
2019-11-13T08:50:43.8370650Z .......................................................................................ii.ii........ 5100/9234
2019-11-13T08:50:52.3863952Z ......................i............................................................................. 5300/9234
2019-11-13T08:51:00.8144530Z .................................................................................................... 5400/9234
2019-11-13T08:51:09.5269840Z .....................................................................i.............................. 5500/9234
2019-11-13T08:51:16.9953672Z .................................................................................................... 5600/9234
2019-11-13T08:51:16.9953672Z .................................................................................................... 5600/9234
2019-11-13T08:51:24.5558875Z .................................................................................................... 5700/9234
2019-11-13T08:51:33.9983065Z .......................................................ii...i..ii...........i....................... 5800/9234
2019-11-13T08:51:56.9131010Z .................................................................................................... 6000/9234
2019-11-13T08:52:04.5679111Z .................................................................................................... 6100/9234
2019-11-13T08:52:04.5679111Z .................................................................................................... 6100/9234
2019-11-13T08:52:09.4877492Z ..........................................................................i..ii..................... 6200/9234
2019-11-13T08:52:38.8681412Z .................................................................................................... 6400/9234
2019-11-13T08:52:41.1894106Z ..........................................i......................................................... 6500/9234
2019-11-13T08:52:43.4750000Z .................................................................................................... 6600/9234
2019-11-13T08:52:45.8732124Z ..........................i......................................................................... 6700/9234
---
2019-11-13T08:58:02.6969376Z  finished in 5.757
2019-11-13T08:58:02.7158951Z Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:02.9075600Z 
2019-11-13T08:58:02.9076401Z running 156 tests
2019-11-13T08:58:05.8219640Z iiii....iii......iii..iiii...i.............................i..i..................i....i...........ii 100/156
2019-11-13T08:58:07.7084041Z .i.i..iiii..............i.........iii.i.........ii......
2019-11-13T08:58:07.7086788Z 
2019-11-13T08:58:07.7090205Z  finished in 4.993
2019-11-13T08:58:07.7293863Z Check compiletest suite=codegen-units mode=codegen-units (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:07.8966703Z 
---
2019-11-13T08:58:10.6947084Z  finished in 2.111
2019-11-13T08:58:10.6947667Z Check compiletest suite=assembly mode=assembly (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:10.6947719Z 
2019-11-13T08:58:10.6947764Z running 9 tests
2019-11-13T08:58:10.6948312Z iiiiiiiii
2019-11-13T08:58:10.6949477Z 
2019-11-13T08:58:10.6949545Z  finished in 0.168
2019-11-13T08:58:10.6949882Z Check compiletest suite=incremental mode=incremental (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:10.6949932Z 
---
2019-11-13T08:58:29.7028563Z  finished in 19.485
2019-11-13T08:58:29.7029057Z Check compiletest suite=debuginfo mode=debuginfo-gdb+lldb (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:29.7479219Z 
2019-11-13T08:58:29.7479684Z running 123 tests
2019-11-13T08:58:53.6563336Z .iiiii...i.....i..i...i..i.i.i..i.ii..i.i.....i..i....ii..........iiii..........i...ii...i.......ii. 100/123
2019-11-13T08:58:58.1902478Z i.i.i......iii.i.....ii
2019-11-13T08:58:58.1904085Z 
2019-11-13T08:58:58.1917361Z  finished in 28.631
2019-11-13T08:58:58.1924687Z Uplifting stage1 rustc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
2019-11-13T08:58:58.1925683Z Copying stage2 rustc from stage1 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
---
2019-11-13T09:11:00.5122890Z 
2019-11-13T09:11:00.5123654Z    Doc-tests core
2019-11-13T09:11:05.4971859Z 
2019-11-13T09:11:05.4973121Z running 2418 tests
2019-11-13T09:11:15.9142050Z ......iiiii......................................................................................... 100/2418
2019-11-13T09:11:26.1345073Z ................................................................................ii.................. 200/2418
2019-11-13T09:11:50.1052916Z ..i................................................................................................. 400/2418
2019-11-13T09:11:50.1052916Z ..i................................................................................................. 400/2418
2019-11-13T09:12:00.0140718Z ..................................................i..i.................iiii......................... 500/2418
2019-11-13T09:12:18.7290645Z .................................................................................................... 700/2418
2019-11-13T09:12:28.2646213Z .................................................................................................... 800/2418
2019-11-13T09:12:37.8639943Z .................................................................................................... 900/2418
2019-11-13T09:12:47.4346601Z .................................................................................................... 1000/2418
---
2019-11-13T09:16:34.7906935Z ............................................... 300/763
2019-11-13T09:16:34.7932395Z thread '<unnamed>' panicked at 'explicit panic', src/libstd/io/stdio.rs:854:13
2019-11-13T09:16:34.8904853Z .................................................................................................... 400/763
2019-11-13T09:16:36.9667665Z .................................................................................................... 500/763
2019-11-13T09:16:36.9916356Z ....................thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', src/libcore/result.rs:1165:5
2019-11-13T09:16:36.9933340Z ....thread '<unnamed>thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: "SendError(..)"', src/libcore/result.rs:1165:5
2019-11-13T09:16:36.9944808Z ' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError.', src/libcore/result.rs:1165.:5.
2019-11-13T09:16:36.9960405Z ....thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', src/libcore/result.rs:1165:5
2019-11-13T09:16:37.1973794Z ..........................................thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', src/libcore/result.rs:1165:5
2019-11-13T09:16:37.2027186Z ...........thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', src/libcore/result.rs:1165:5
2019-11-13T09:16:37.2041080Z .thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: RecvError', src/libcore/result.rs:1165:5
2019-11-13T09:16:39.2737923Z ....................thread '<unnamed>' panicked at 'explicit panic', src/libstd/sync/mutex.rs:629:13
2019-11-13T09:16:39.2742560Z ......thread '<unnamed>' panicked at 'test panic in inner thread to poison mutex', src/libstd/sync/mutex.rs:584:13
2019-11-13T09:16:39.2751109Z ...thread '<unnamed>' panicked at 'test panic in inner thread to poison mutex', src/libstd/sync/mutex.rs:561:13
2019-11-13T09:16:39.2752755Z thread '<unnamed>' panicked at 'explicit panic', src/libstd/sync/mutex.rs:689:13
---
2019-11-13T09:16:48.5405299Z 
2019-11-13T09:16:48.5405793Z running 1000 tests
2019-11-13T09:17:09.0748853Z i................................................................................................... 100/1000
2019-11-13T09:17:20.0770572Z .................................................................................................... 200/1000
2019-11-13T09:17:27.9656120Z ...................iii......i......i...i......i..................................................... 300/1000
2019-11-13T09:17:33.2223830Z .................................................................................................... 400/1000
2019-11-13T09:17:40.3341183Z .....................................F....Fi..i.................................ii.................. 500/1000
2019-11-13T09:17:54.1075539Z .................................................................................................... 700/1000
2019-11-13T09:17:54.1075539Z .................................................................................................... 700/1000
2019-11-13T09:18:01.4668892Z ..........................iiii...................................................................... 800/1000
2019-11-13T09:18:16.7842059Z .................................................................................................... 900/1000
2019-11-13T09:18:24.3463715Z ................................................iiii................................................ 1000/1000
2019-11-13T09:18:24.3466145Z failures:
2019-11-13T09:18:24.3466217Z 
2019-11-13T09:18:24.3472024Z ---- keyword_docs.rs - break_keyword (line 57) stdout ----
2019-11-13T09:18:24.3472336Z error: unused label
---
2019-11-13T09:18:24.3474216Z  --> keyword_docs.rs:55:9
2019-11-13T09:18:24.3474474Z   |
2019-11-13T09:18:24.3474655Z 1 | #![deny(warnings)]
2019-11-13T09:18:24.3474803Z   |         ^^^^^^^^
2019-11-13T09:18:24.3474981Z   = note: `#[deny(unused_labels)]` implied by `#[deny(warnings)]`
2019-11-13T09:18:24.3475299Z error: aborting due to previous error
2019-11-13T09:18:24.3475450Z 
2019-11-13T09:18:24.3476156Z Couldn't compile the test.
2019-11-13T09:18:24.3476581Z ---- keyword_docs.rs - continue_keyword (line 178) stdout ----
---
2019-11-13T09:18:24.3478523Z  --> keyword_docs.rs:176:9
2019-11-13T09:18:24.3478720Z   |
2019-11-13T09:18:24.3478888Z 1 | #![deny(warnings)]
2019-11-13T09:18:24.3479035Z   |         ^^^^^^^^
2019-11-13T09:18:24.3479429Z   = note: `#[deny(unused_labels)]` implied by `#[deny(warnings)]`
2019-11-13T09:18:24.3479817Z error: aborting due to previous error
2019-11-13T09:18:24.3479948Z 
2019-11-13T09:18:24.3480336Z Couldn't compile the test.
2019-11-13T09:18:24.3480498Z 
---
2019-11-13T09:18:24.3661568Z   local time: Wed Nov 13 09:18:24 UTC 2019
2019-11-13T09:18:24.6440561Z   network time: Wed, 13 Nov 2019 09:18:24 GMT
2019-11-13T09:18:24.6441474Z == end clock drift check ==
2019-11-13T09:18:25.1509316Z 
2019-11-13T09:18:25.1668066Z ##[error]Bash exited with code '1'.
2019-11-13T09:18:25.1708595Z ##[section]Starting: Checkout
2019-11-13T09:18:25.1710990Z ==============================================================================
2019-11-13T09:18:25.1711046Z Task         : Get sources
2019-11-13T09:18:25.1711110Z 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)

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 13, 2019

Sigh. There must be a better way.

The rustdoc for break and continue has gratuitous labels. I fixed it as best I could, not changing the visible text at all. Trying a local build again now.

@varkor

This comment has been minimized.

Copy link
Member

varkor commented Nov 13, 2019

@BartMassey: you can run the entire test suite locally, which will mean you don't rely on the CI to find out if you've found all the erroneous labels.

@withoutboats

This comment has been minimized.

Copy link
Contributor

withoutboats commented Nov 26, 2019

Procedurally: why was this r+'d without team consensus? Still 3 unchecked boxes.

Substantially: I admit I haven't followed the discussion, but these labels can be used for documentation purposes alone and I'd rather not have to turn off a lint for that reason. I would at least like to allow them if they begin with an underscore, similar to the unused variable lint.

@withoutboats

This comment has been minimized.

Copy link
Contributor

withoutboats commented Nov 26, 2019

I notice that in libstd there are some changed to use an underscore in doc tests, though that doesn't suppress this behavior in the playpen at least?

I also notice the labels removed in this PR fall into two categories:

  • They are in a stack of loops, others of which have labels. These labels add symmetry and hopefully help identify what each loop does.
  • They have a fairly descriptive name and hopefully are helpful for documentary purposes.

I'm not convinced that removing any of these labels has made the code easier to understand. I can understand requiring them to begin with _ to heavily imply they're for documentation only and I shouldn't look for the break, but I don't think I should have to write #[allow(unused_labels)] when I want my code to self-describe like this.

@withoutboats

This comment has been minimized.

Copy link
Contributor

withoutboats commented Nov 26, 2019

Sorry, discussion of underscore was hidden by github, found the issue and PR! I'm fine with this.

@Centril

This comment has been minimized.

Copy link
Member

Centril commented Nov 26, 2019

Procedurally: why was this r+'d without team consensus? Still 3 unchecked boxes.

Ah woops; missed the FCP; @bors r-

@joshtriplett

This comment has been minimized.

Copy link
Member

joshtriplett commented Nov 26, 2019

I agree with the analysis of the crater results. Due to cap-lints, we don't need to worry about reverse dependencies. We're allowed to add new warnings, and people using deny(warnings) are asking for warnings to cause build failures. We only have two crates in the entire ecosystem that both use deny(warnings) and have an unused label. That seems perfectly reasonable for the introduction of a new warning.

As soon as we have team consensus on this, I think we can merge it.

@BartMassey

This comment has been minimized.

Copy link
Author

BartMassey commented Nov 26, 2019

@joshtriplett The http one is already fixed, even. Thanks much!

@withoutboats Thanks! Appreciate your looking at this. If you could add your vote to the FCP I think we will be good to go… If you think it's important for me to put back some of the labels I removed from the compiler with underscores, I can do that also: let me know. I left the ones in the documentation for the reason you mentioned: it's probably clearer that way.

@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Nov 27, 2019

🔔 This is now entering its final comment period, as per the review above. 🔔

@joshtriplett

This comment has been minimized.

Copy link
Member

joshtriplett commented Nov 30, 2019

@BartMassey Congratulations on your first change to rustc!

@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Dec 7, 2019

The final comment period, with a disposition to merge, as per the review above, is now complete.

As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed.

The RFC will be merged soon.

@joshtriplett

This comment has been minimized.

Copy link
Member

joshtriplett commented Dec 7, 2019

@bors r+

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Dec 7, 2019

📌 Commit 34a45a5 has been approved by joshtriplett

Centril added a commit to Centril/rust that referenced this pull request Dec 7, 2019
Change unused_labels from allow to warn

Fixes rust-lang#66324, making the unused_labels lint warn instead of allow by default. I'm told @rust-lang/lang will need to review this, and perhaps will want to do a crater run.
bors added a commit that referenced this pull request Dec 8, 2019
Rollup of 7 pull requests

Successful merges:

 - #66325 (Change unused_labels from allow to warn)
 - #66730 (remove dependency from libhermit)
 - #66892 (Format libcore with rustfmt (including tests and benches))
 - #66899 (Standard library support for riscv64gc-unknown-linux-gnu)
 - #66991 (Cleanup BodyCache)
 - #67114 (Make `ForeignItem` an alias of `Item`.)
 - #67129 (Fixes typo)

Failed merges:

 - #66886 (Remove the borrow check::nll submodule)

r? @ghost
Centril added a commit to Centril/rust that referenced this pull request Dec 8, 2019
Change unused_labels from allow to warn

Fixes rust-lang#66324, making the unused_labels lint warn instead of allow by default. I'm told @rust-lang/lang will need to review this, and perhaps will want to do a crater run.
bors added a commit that referenced this pull request Dec 8, 2019
Rollup of 5 pull requests

Successful merges:

 - #66325 (Change unused_labels from allow to warn)
 - #66991 (Cleanup BodyCache)
 - #67101 (use `#[allow(unused_attributes)]` to paper over incr.comp problem)
 - #67114 (Make `ForeignItem` an alias of `Item`.)
 - #67129 (Fixes typo)

Failed merges:

 - #66886 (Remove the borrow check::nll submodule)

r? @ghost
@bors bors merged commit 34a45a5 into rust-lang:master Dec 8, 2019
5 checks passed
5 checks passed
homu Test successful
Details
pr Build #20191116.4 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 (Linux x86_64-gnu-tools) Linux x86_64-gnu-tools succeeded
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
You can’t perform that action at this time.