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

Conversation

BartMassey
Copy link
Contributor

@BartMassey 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
Copy link
Collaborator

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.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 12, 2019
@Centril
Copy link
Contributor

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 has been minimized.

@Centril
Copy link
Contributor

Centril commented Nov 12, 2019

I already fixed that. :)

@rust-highfive
Copy link
Collaborator

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
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
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
Copy link
Contributor Author

@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
Copy link
Contributor

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
Copy link
Contributor Author

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

@rust-highfive
Copy link
Collaborator

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
Copy link
Contributor

This is the last one:

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

@BartMassey
Copy link
Contributor 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
Copy link
Collaborator

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
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
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
Copy link
Contributor Author

Working. Thanks!

@BartMassey
Copy link
Contributor 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
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
Copy link
Contributor Author

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
Copy link
Contributor

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

@BartMassey
Copy link
Contributor 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
Copy link
Collaborator

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
Copy link
Contributor Author

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
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
Copy link
Contributor

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

@Centril
Copy link
Contributor

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-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Nov 26, 2019
@Centril Centril added S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Nov 26, 2019
@joshtriplett
Copy link
Member

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
Copy link
Contributor Author

@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 rfcbot added final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. and removed proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. labels Nov 27, 2019
@rfcbot
Copy link

rfcbot commented Nov 27, 2019

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

@joshtriplett
Copy link
Member

@BartMassey Congratulations on your first change to rustc!

@rfcbot rfcbot added finished-final-comment-period The final comment period is finished for this PR / Issue. and removed final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. labels Dec 7, 2019
@rfcbot
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
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Dec 7, 2019

📌 Commit 34a45a5 has been approved by joshtriplett

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). labels Dec 7, 2019
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.
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
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Feb 17, 2020
Version 1.41.0 (2020-01-30)
===========================

Language
--------

- [You can now pass type parameters to foreign items when implementing
  traits.][65879] E.g. You can now write `impl<T> From<Foo> for Vec<T> {}`.
- [You can now arbitrarily nest receiver types in the `self` position.][64325] E.g. you can
  now write `fn foo(self: Box<Box<Self>>) {}`. Previously only `Self`, `&Self`,
  `&mut Self`, `Arc<Self>`, `Rc<Self>`, and `Box<Self>` were allowed.
- [You can now use any valid identifier in a `format_args` macro.][66847]
  Previously identifiers starting with an underscore were not allowed.
- [Visibility modifiers (e.g. `pub`) are now syntactically allowed on trait items and
  enum variants.][66183] These are still rejected semantically, but
  can be seen and parsed by procedural macros and conditional compilation.

Compiler
--------

- [Rustc will now warn if you have unused loop `'label`s.][66325]
- [Removed support for the `i686-unknown-dragonfly` target.][67255]
- [Added tier 3 support\* for the `riscv64gc-unknown-linux-gnu` target.][66661]
- [You can now pass an arguments file passing the `@path` syntax
  to rustc.][66172] Note that the format differs somewhat from what is
  found in other tooling; please see [the documentation][argfile-docs] for
  more information.
- [You can now provide `--extern` flag without a path, indicating that it is
  available from the search path or specified with an `-L` flag.][64882]

\* Refer to Rust's [platform support page][forge-platform-support] for more
information on Rust's tiered platform support.

[argfile-docs]: https://doc.rust-lang.org/nightly/rustc/command-line-arguments.html#path-load-command-line-flags-from-a-path

Libraries
---------

- [The `core::panic` module is now stable.][66771] It was already stable
  through `std`.
- [`NonZero*` numerics now implement `From<NonZero*>` if it's a smaller integer
  width.][66277] E.g. `NonZeroU16` now implements `From<NonZeroU8>`.
- [`MaybeUninit<T>` now implements `fmt::Debug`.][65013]

Stabilized APIs
---------------

- [`Result::map_or`]
- [`Result::map_or_else`]
- [`std::rc::Weak::weak_count`]
- [`std::rc::Weak::strong_count`]
- [`std::sync::Weak::weak_count`]
- [`std::sync::Weak::strong_count`]

Cargo
-----

- [Cargo will now document all the private items for binary crates
  by default.][cargo/7593]
- [`cargo-install` will now reinstall the package if it detects that it is out
  of date.][cargo/7560]
- [Cargo.lock now uses a more git friendly format that should help to reduce
  merge conflicts.][cargo/7579]
- [You can now override specific dependencies's build settings][cargo/7591] E.g.
  `[profile.dev.overrides.image] opt-level = 2` sets the `image` crate's
  optimisation level to `2` for debug builds. You can also use
  `[profile.<profile>.build_overrides]` to override build scripts and
  their dependencies.

Misc
----

- [You can now specify `edition` in documentation code blocks to compile the block
  for that edition.][66238] E.g. `edition2018` tells rustdoc that the code sample
  should be compiled the 2018 edition of Rust.
- [You can now provide custom themes to rustdoc with `--theme`, and check the
  current theme with `--check-theme`.][54733]
- [You can use `#[cfg(doc)]` to compile an item when building documentation.][61351]

Compatibility Notes
-------------------

- [As previously announced 1.41.0 will be the last tier 1 release for 32-bit
  Apple targets.][apple-32bit-drop] This means that the source code is still
  available to build, but the targets are no longer being tested and release
  binaries for those platforms will no longer be distributed by the Rust project.
  Please refer to the linked blog post for more information.

[54733]: rust-lang/rust#54733
[61351]: rust-lang/rust#61351
[67255]: rust-lang/rust#67255
[66661]: rust-lang/rust#66661
[66771]: rust-lang/rust#66771
[66847]: rust-lang/rust#66847
[66238]: rust-lang/rust#66238
[66277]: rust-lang/rust#66277
[66325]: rust-lang/rust#66325
[66172]: rust-lang/rust#66172
[66183]: rust-lang/rust#66183
[65879]: rust-lang/rust#65879
[65013]: rust-lang/rust#65013
[64882]: rust-lang/rust#64882
[64325]: rust-lang/rust#64325
[cargo/7560]: rust-lang/cargo#7560
[cargo/7579]: rust-lang/cargo#7579
[cargo/7591]: rust-lang/cargo#7591
[cargo/7593]: rust-lang/cargo#7593
[`Result::map_or_else`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or_else
[`Result::map_or`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.map_or
[`std::rc::Weak::weak_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.weak_count
[`std::rc::Weak::strong_count`]: https://doc.rust-lang.org/std/rc/struct.Weak.html#method.strong_count
[`std::sync::Weak::weak_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.weak_count
[`std::sync::Weak::strong_count`]: https://doc.rust-lang.org/std/sync/struct.Weak.html#method.strong_count
[apple-32bit-drop]: https://blog.rust-lang.org/2020/01/03/reducing-support-for-32-bit-apple-targets.html
markan added a commit to habitat-sh/builder that referenced this pull request Aug 12, 2020
(replaced by compiler change rust-lang/rust#66325)

Signed-off-by: Mark Anderson <mark@chef.io>
markan added a commit to habitat-sh/builder that referenced this pull request Aug 13, 2020
(replaced by compiler change rust-lang/rust#66325)

Signed-off-by: Mark Anderson <mark@chef.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. finished-final-comment-period The final comment period is finished for this PR / Issue. relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

unused_labels should be reported as warnings