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

Crater 2024 edition test #122960

Closed
wants to merge 3 commits into from
Closed

Conversation

ehuss
Copy link
Contributor

@ehuss ehuss commented Mar 23, 2024

No description provided.

@ehuss ehuss self-assigned this Mar 23, 2024
@rustbot
Copy link
Collaborator

rustbot commented Mar 23, 2024

⚠️ Warning ⚠️

  • These commits modify submodules.

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 23, 2024
@ehuss
Copy link
Contributor Author

ehuss commented Mar 23, 2024

@bors try

@bors
Copy link
Contributor

bors commented Mar 23, 2024

⌛ Trying commit b47b918 with merge 8e5ca94...

bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 23, 2024
@bors
Copy link
Contributor

bors commented Mar 23, 2024

☀️ Try build successful - checks-actions
Build commit: 8e5ca94 (8e5ca945edcf8a11e3cd7ac6d9fda930a8832cde)

@fmease fmease added S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 23, 2024
@ehuss
Copy link
Contributor Author

ehuss commented Mar 23, 2024

@craterbot check crates=top-1000 p=1

@craterbot
Copy link
Collaborator

👌 Experiment pr-122960 created and queued.
🤖 Automatically detected try build 8e5ca94
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. labels Mar 23, 2024
@matthiaskrgr
Copy link
Member

Out of curiosity, what does this do?
Compile top 1000 edition=2021 crates with edition=2024 and sees how it goes?

@ehuss
Copy link
Contributor Author

ehuss commented Mar 23, 2024

It compiles them with 2021, collects diagnostics to migrate to 2024 and applies them, then compiles again with 2024 to ensures that works.

@matthiaskrgr
Copy link
Member

Does this cover anything beyond the 2024 lint group?
rust-2024-compatibility static-mut-refs, unsafe-op-in-unsafe-fn

@ehuss
Copy link
Contributor Author

ehuss commented Mar 24, 2024

This is just testing unsafe-op-in-unsafe-fn.

@craterbot
Copy link
Collaborator

🚧 Experiment pr-122960 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-122960 is completed!
📊 28 regressed and 144 fixed (1000 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Mar 24, 2024
@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Mar 25, 2024
@ehuss
Copy link
Contributor Author

ehuss commented Mar 25, 2024

@bors try

@bors
Copy link
Contributor

bors commented Mar 25, 2024

⌛ Trying commit f1ef1e3 with merge 9ae1860...

bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 25, 2024
@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Contributor

bors commented Mar 25, 2024

☀️ Try build successful - checks-actions
Build commit: 9ae1860 (9ae1860851f3fbc1435a1698e572252c0076f413)

@ehuss
Copy link
Contributor Author

ehuss commented Mar 25, 2024

@craterbot check crates=top-5000 p=1

@craterbot
Copy link
Collaborator

👌 Experiment pr-122960-1 created and queued.
🤖 Automatically detected try build 9ae1860
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 25, 2024
@bors
Copy link
Contributor

bors commented Mar 29, 2024

⌛ Trying commit 561eebd with merge 36dbcae...

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-17 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#17 exporting to docker image format
#17 sending tarball 28.6s done
#17 DONE 31.8s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-17]
---
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-17', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-17/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/async-gen-deduce-yield.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/async-gen-deduce-yield" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/async-gen-deduce-yield/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected one of `move`, `|`, or `||`, found `{`
Build completed unsuccessfully in 0:14:13
   |
LL |     async gen {
LL |     async gen {
   |               ^ expected one of `move`, `|`, or `||`
error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/coroutine/gen_block.rs#e2024 stdout ----
diff of stderr:

+ error: expected identifier, found reserved keyword `yield`
+    |
+    |
+ LL |     let y = gen { yield 42 };
+    |             ---   ^^^^^ expected identifier, found reserved keyword
+    |             while parsing this struct
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block.rs:6:13
+   --> $DIR/gen_block.rs:6:13
+    |
+ LL |     let x = gen {};
+    |             ^^^ not found in this scope
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block.rs:9:13
+    |
+ LL |     let y = gen { yield 42 };
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block.rs:12:5
+    |
+    |
+ LL |     gen {};
+    |     ^^^ not found in this scope
+ 
1 error[E0658]: yield syntax is experimental
2   --> $DIR/gen_block.rs:15:16
3    |

8    = help: add `#![feature(coroutines)]` to the crate attributes to enable
9    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
- error[E0282]: type annotations needed
-   --> $DIR/gen_block.rs:6:13
-    |
- LL |     let x = gen {};
---
21 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block.e2024/gen_block.e2024.stderr
To only update this specific test, also pass `--test-args coroutine/gen_block.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block.e2024/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
   |
LL |     let y = gen { yield 42 };
   |             ---   ^^^^^ expected identifier, found reserved keyword
   |             while parsing this struct

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block.rs:6:13
##[error]  --> /checkout/tests/ui/coroutine/gen_block.rs:6:13
   |
LL |     let x = gen {};
   |             ^^^ not found in this scope

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block.rs:9:13
   |
LL |     let y = gen { yield 42 };

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block.rs:12:5
   |
   |
LL |     gen {};
   |     ^^^ not found in this scope

error[E0658]: yield syntax is experimental
##[error]  --> /checkout/tests/ui/coroutine/gen_block.rs:15:16
   |
LL |     let _ = || yield true; //[none]~ ERROR yield syntax is experimental
   |
   = note: see issue #43122 <https://github.com/rust-lang/rust/issues/43122> for more information
   = help: add `#![feature(coroutines)]` to the crate attributes to enable
   = help: add `#![feature(coroutines)]` to the crate attributes to enable
   = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
error: aborting due to 5 previous errors

Some errors have detailed explanations: E0422, E0658.
For more information about an error, try `rustc --explain E0422`.
For more information about an error, try `rustc --explain E0422`.
------------------------------------------


---- [ui] tests/ui/coroutine/gen_block_is_coro.rs stdout ----
diff of stderr:

- error[E0277]: the trait bound `{gen block@$DIR/gen_block_is_coro.rs:7:5: 7:21}: Coroutine` is not satisfied
-   --> $DIR/gen_block_is_coro.rs:6:13
+ error: expected identifier, found reserved keyword `yield`
3    |
3    |
- LL | fn foo() -> impl Coroutine<Yield = u32, Return = ()> {
-    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Coroutine` is not implemented for `{gen block@$DIR/gen_block_is_coro.rs:7:5: 7:21}`
+ LL |     gen { yield 42 }
+    |     ---   ^^^^^ expected identifier, found reserved keyword
+    |     while parsing this struct
6 
6 
- error[E0277]: the trait bound `{gen block@$DIR/gen_block_is_coro.rs:11:5: 11:21}: Coroutine` is not satisfied
-   --> $DIR/gen_block_is_coro.rs:10:13
+ error: expected identifier, found reserved keyword `yield`
9    |
9    |
- LL | fn bar() -> impl Coroutine<Yield = i64, Return = ()> {
-    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Coroutine` is not implemented for `{gen block@$DIR/gen_block_is_coro.rs:11:5: 11:21}`
+ LL |     gen { yield 42 }
+    |     ---   ^^^^^ expected identifier, found reserved keyword
+    |     while parsing this struct
12 
12 
- error[E0277]: the trait bound `{gen block@$DIR/gen_block_is_coro.rs:15:5: 15:21}: Coroutine` is not satisfied
-   --> $DIR/gen_block_is_coro.rs:14:13
+ error: expected identifier, found reserved keyword `yield`
15    |
15    |
- LL | fn baz() -> impl Coroutine<Yield = i32, Return = ()> {
-    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Coroutine` is not implemented for `{gen block@$DIR/gen_block_is_coro.rs:15:5: 15:21}`
+ LL |     gen { yield 42 }
+    |     ---   ^^^^^ expected identifier, found reserved keyword
+    |     while parsing this struct
18 
- error: aborting due to 3 previous errors
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block_is_coro.rs:7:5
+    |
+ LL |     gen { yield 42 }
20 
- For more information about this error, try `rustc --explain E0277`.
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block_is_coro.rs:11:5
+   --> $DIR/gen_block_is_coro.rs:11:5
+    |
+ LL |     gen { yield 42 }
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block_is_coro.rs:15:5
+    |
+    |
+ LL |     gen { yield 42 }
+ 
+ error: aborting due to 6 previous errors
+ 
+ For more information about this error, try `rustc --explain E0422`.
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_coro.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_coro" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_coro/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---
---- [ui] tests/ui/coroutine/gen_block_is_fused_iter.rs#next stdout ----

error in revision `next`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_fused_iter.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "next" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_fused_iter.next" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_fused_iter.next/auxiliary" "--edition" "2024" "-Zunstable-options" "-Znext-solver"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---
---- [ui] tests/ui/coroutine/gen_block_is_iter.rs#next stdout ----

error in revision `next`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_iter.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "next" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_iter.next" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_iter.next/auxiliary" "--edition" "2024" "-Zunstable-options" "-Znext-solver"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---


---- [ui] tests/ui/coroutine/gen_block_is_fused_iter.rs#old stdout ----

error in revision `old`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_fused_iter.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_fused_iter.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_fused_iter.old/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_fn_iter.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn_iter/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn_iter/auxiliary" "--edition=2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
   |
LL | #![feature(gen_blocks)]
   |                        - expected one of 9 possible tokens
...
...
LL | gen fn foo() -> i32 {

error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/coroutine/gen_fn.rs#e2024 stdout ----
diff of stderr:

- error[E0658]: gen blocks are experimental
+ error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
3    |
4 LL | gen fn foo() {}

-    | ^^^
-    | ^^^
-    |
-    = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
-    = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
-    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
10 
11 error: aborting due to 1 previous error
12 


- For more information about this error, try `rustc --explain E0658`.
14 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn.e2024/gen_fn.e2024.stderr
To only update this specific test, also pass `--test-args coroutine/gen_fn.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_fn.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn.e2024/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
   |
LL | gen fn foo() {}
   | ^^^ expected one of 9 possible tokens

---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_fn_lifetime_capture.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn_lifetime_capture" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_fn_lifetime_capture/auxiliary" "--edition=2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
   |
LL | #![feature(gen_blocks)]
   |                        - expected one of 9 possible tokens
...
...
LL | gen fn foo<'a, 'b>(x: &'a i32, y: &'b i32, z: &'b i32) -> &'b i32 {

error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/coroutine/gen_block_is_no_future.rs stdout ----
diff of stderr:

- error[E0277]: `{gen block@$DIR/gen_block_is_no_future.rs:5:5: 5:21}` is not a future
-   --> $DIR/gen_block_is_no_future.rs:4:13
+ error: expected identifier, found reserved keyword `yield`
3    |
- LL | fn foo() -> impl std::future::Future {
- LL | fn foo() -> impl std::future::Future {
-    |             ^^^^^^^^^^^^^^^^^^^^^^^^ `{gen block@$DIR/gen_block_is_no_future.rs:5:5: 5:21}` is not a future
+ LL |     gen { yield 42 }
+    |     ---   ^^^^^ expected identifier, found reserved keyword
+    |     while parsing this struct
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/gen_block_is_no_future.rs:5:5
+   --> $DIR/gen_block_is_no_future.rs:5:5
6    |
-    = help: the trait `Future` is not implemented for `{gen block@$DIR/gen_block_is_no_future.rs:5:5: 5:21}`
+ LL |     gen { yield 42 }
8 
- error: aborting due to 1 previous error
+ error: aborting due to 2 previous errors
10 
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_no_future.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_no_future" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_no_future/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---


---- [ui] tests/ui/coroutine/gen_block_is_iter.rs#old stdout ----

error in revision `old`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_is_iter.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_iter.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_is_iter.old/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
   |     |
   |     while parsing this struct

error: expected identifier, found reserved keyword `yield`
   |
LL |     gen { yield 42 }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     |
---
---- [ui] tests/ui/coroutine/gen_block_panic.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_panic.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_panic/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_panic/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
LL |     let mut iter = gen {
   |                    --- while parsing this struct
LL |         yield 42;
---

---- [ui] tests/ui/coroutine/gen_block_move.rs stdout ----
diff of stderr:

- error[E0373]: gen block may outlive the current function, but it borrows `x`, which is owned by the current function
-   --> $DIR/gen_block_move.rs:7:5
+ error: expected identifier, found reserved keyword `yield`
3    |
- LL | /     gen {
- LL | |         yield 42;
- LL | |         yield 42;
- LL | |         if x == "foo" { return }
- LL | |         x.clear();
-    | |         - `x` is borrowed here
- LL | |         for x in 3..6 { yield x }
- LL | |     }
-    | |_____^ may outlive borrowed value `x`
- note: gen block is returned here
+ LL |     gen {
+    |     --- while parsing this struct
+ LL |         yield 42;
+ LL |         yield 42;
+    |         ^^^^^ expected identifier, found reserved keyword
+ 
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
14   --> $DIR/gen_block_move.rs:7:5
15    |
- LL | /     gen {
- LL | |         yield 42;
- LL | |         if x == "foo" { return }
- LL | |         x.clear();
- LL | |         for x in 3..6 { yield x }
-    | |_____^
-    | |_____^
- help: to force the gen block to take ownership of `x` (and any other referenced variables), use the `move` keyword
- LL |     gen move {
-    |         ++++
+ LL |     gen {
+    |     ^^^ not found in this scope
---
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_move/gen_block_move.stderr
diff of fixed:

4 
5 fn moved() -> impl Iterator<Item = u32> {
6     let mut x = "foo".to_string();
-     gen move { //~ ERROR: gen block may outlive the current function
+     gen { //~ ERROR: gen block may outlive the current function
8         yield 42;
9         if x == "foo" { return }
10         x.clear();

The actual fixed differed from the expected fixed.
Actual fixed saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_move/gen_block_move.fixed
To update references, rerun the tests and pass the `--bless` flag
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coroutine/gen_block_move.rs`

error: 2 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_move.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_move" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_move/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
   |
LL |     gen { //~ ERROR: gen block may outlive the current function
   |     --- while parsing this struct
   |         ^^^^^ expected identifier, found reserved keyword

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block_move.rs:7:5
##[error]  --> /checkout/tests/ui/coroutine/gen_block_move.rs:7:5
   |
LL |     gen { //~ ERROR: gen block may outlive the current function

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0422`.
For more information about this error, try `rustc --explain E0422`.
------------------------------------------


---- [ui] tests/ui/coroutine/gen_block_iterate.rs#next stdout ----

error in revision `next`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_iterate.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "next" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_iterate.next/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_iterate.next/auxiliary" "--edition" "2024" "-Zunstable-options" "-Znext-solver"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
   |
LL |     gen { yield 42; for x in 3..6 { yield x } }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     while parsing this struct

error: expected one of `!`, `.`, `::`, `;`, `?`, `{`, `}`, or an operator, found keyword `move`
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:13:9
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:13:9
   |
LL |     gen move {
   |         ^^^^ expected one of 8 possible tokens

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:8:5
   |
LL |     gen { yield 42; for x in 3..6 { yield x } }

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0422`.
For more information about this error, try `rustc --explain E0422`.
------------------------------------------


---- [ui] tests/ui/coroutine/gen_block_iterate.rs#old stdout ----

error in revision `old`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/gen_block_iterate.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_iterate.old/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/gen_block_iterate.old/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected identifier, found reserved keyword `yield`
   |
   |
LL |     gen { yield 42; for x in 3..6 { yield x } }
   |     ---   ^^^^^ expected identifier, found reserved keyword
   |     while parsing this struct

error: expected one of `!`, `.`, `::`, `;`, `?`, `{`, `}`, or an operator, found keyword `move`
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:13:9
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:13:9
   |
LL |     gen move {
   |         ^^^^ expected one of 8 possible tokens

error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/coroutine/gen_block_iterate.rs:8:5
   |
LL |     gen { yield 42; for x in 3..6 { yield x } }

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0422`.
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/return-types-diverge.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/return-types-diverge" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/return-types-diverge/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
   |
   |
LL | async gen fn async_gen_fn() -> i32 { diverge() }
   |                                                 - expected one of 9 possible tokens
LL |
LL | gen fn gen_fn() -> i32 { diverge() }

error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/coroutine/return-types.rs stdout ----
diff of stderr:

- error[E0308]: mismatched types
-   --> $DIR/return-types.rs:5:38
+ error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
3    |
3    |
4 LL | async gen fn async_gen_fn() -> i32 { 0 }
-    |                                |
-    |                                expected `()` because of return type
- 
- error[E0308]: mismatched types
- error[E0308]: mismatched types
-   --> $DIR/return-types.rs:8:26
-    |
+    |                                         - expected one of 9 possible tokens
+ ...
12 LL | gen fn gen_fn() -> i32 { 0 }
-    |                    |
-    |                    expected `()` because of return type
+    | ^^^ unexpected token
16 
16 
- error[E0308]: mismatched types
-   --> $DIR/return-types.rs:12:27
-    |
- LL |     async gen { yield (); 1 };
+ error: aborting due to 1 previous error
22 
- error[E0308]: mismatched types
-   --> $DIR/return-types.rs:17:21
-   --> $DIR/return-types.rs:17:21
-    |
- LL |     gen { yield (); 1 };
- 
- error: aborting due to 4 previous errors
- 
- For more information about this error, try `rustc --explain E0308`.
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/return-types.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/return-types" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coroutine/return-types/auxiliary" "--edition" "2024" "-Zunstable-options"
stdout: none
--- stderr -------------------------------
error: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
   |
   |
LL | async gen fn async_gen_fn() -> i32 { 0 }
   |                                         - expected one of 9 possible tokens
...
LL | gen fn gen_fn() -> i32 { 0 }

error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/coroutine/self_referential_gen_block.rs stdout ----
diff of stderr:

- error[E0626]: borrow may still be in use when `gen` block yields
+ error: expected identifier, found keyword `let`
+   --> $DIR/self_referential_gen_block.rs:8:13
3    |
3    |
- LL |             let z = &y;
- LL |             yield 43;
- LL |             yield 43;
-    |             -------- possible yield occurs here
+ LL |         let mut x = gen {
+    |                     --- while parsing this struct
+ LL |             let y = 42;
8 
- error: aborting due to 1 previous error
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
+   --> $DIR/self_referential_gen_block.rs:7:21
---
diff of stderr:

- error[E0658]: gen blocks are experimental
-   --> $DIR/feature-gate-gen_blocks.rs:5:5
+ error: expected one of `move`, `|`, or `||`, found `{`
3    |
- LL |     gen {};
-    |     ^^^
-    |
-    |
-    = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
-    = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
-    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
- error[E0658]: gen blocks are experimental
-   --> $DIR/feature-gate-gen_blocks.rs:12:5
-    |
14 LL |     async gen {};
14 LL |     async gen {};
-    |     ^^^^^^^^^
-    |
-    = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
-    = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
-    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
+    |               ^ expected one of `move`, `|`, or `||`
- error[E0658]: gen blocks are experimental
-   --> $DIR/feature-gate-gen_blocks.rs:22:5
-   --> $DIR/feature-gate-gen_blocks.rs:22:5
+ error: expected one of `move`, `|`, or `||`, found `{`
23    |
- LL |     gen {};
-    |     ^^^
-    |
-    |
-    = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
-    = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
-    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
- error[E0658]: gen blocks are experimental
-   --> $DIR/feature-gate-gen_blocks.rs:25:5
-    |
34 LL |     async gen {};
34 LL |     async gen {};
-    |     ^^^^^^^^^
-    |
-    = note: see issue #117078 <https://github.com/rust-lang/rust/issues/117078> for more information
-    = help: add `#![feature(gen_blocks)]` to the crate attributes to enable
-    = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date
+    |               ^ expected one of `move`, `|`, or `||`
- error[E0282]: type annotations needed
+ error[E0422]: cannot find struct, variant or union type `gen` in this scope
42   --> $DIR/feature-gate-gen_blocks.rs:5:5
43    |
---
57 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/feature-gates/feature-gate-gen_blocks.e2024/feature-gate-gen_blocks.e2024.stderr
To only update this specific test, also pass `--test-args feature-gates/feature-gate-gen_blocks.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/feature-gates/feature-gate-gen_blocks.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/feature-gates/feature-gate-gen_blocks.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/feature-gates/feature-gate-gen_blocks.e2024/auxiliary" "--edition" "2024" "-Zunstable-options"
--- stderr -------------------------------
--- stderr -------------------------------
error: expected one of `move`, `|`, or `||`, found `{`
   |
LL |     async gen {};
LL |     async gen {};
   |               ^ expected one of `move`, `|`, or `||`

error: expected one of `move`, `|`, or `||`, found `{`
   |
LL |     async gen {};
LL |     async gen {};
   |               ^ expected one of `move`, `|`, or `||`
error[E0422]: cannot find struct, variant or union type `gen` in this scope
##[error]  --> /checkout/tests/ui/feature-gates/feature-gate-gen_blocks.rs:5:5
   |
LL |     gen {};
---

---- [ui] tests/ui/impl-trait/implicit-capture-late.rs stdout ----
diff of stderr:

- error[E0657]: `impl Trait` cannot capture higher-ranked lifetime from `dyn` type
+ error: []
3    |
3    |
4 LL | fn foo(x: Vec<i32>) -> Box<dyn for<'a> Deref<Target = impl ?Sized>> {
-    |                                                       ^^^^^^^^^^^ `impl Trait` implicitly captures all lifetimes in scope
-    |
- note: lifetime declared here
-   --> $DIR/implicit-capture-late.rs:10:36
-   --> $DIR/implicit-capture-late.rs:10:36
-    |
- LL | fn foo(x: Vec<i32>) -> Box<dyn for<'a> Deref<Target = impl ?Sized>> {
- 
- error: [o]
-   --> $DIR/implicit-capture-late.rs:10:55
-    |
-    |
- LL | fn foo(x: Vec<i32>) -> Box<dyn for<'a> Deref<Target = impl ?Sized>> {
18 
- error: aborting due to 2 previous errors
+ error: aborting due to 1 previous error
20 
---
--- stderr -------------------------------
error: []
##[error]  --> /checkout/tests/ui/impl-trait/implicit-capture-late.rs:10:55
   |
LL | fn foo(x: Vec<i32>) -> Box<dyn for<'a> Deref<Target = impl ?Sized>> {

error: aborting due to 1 previous error
------------------------------------------



---- [ui] tests/ui/impl-trait/variance.rs#new stdout ----
diff of stderr:

- error: [*, o]
+ error: [*]
3    |
3    |
4 LL | fn not_captured_early<'a: 'a>() -> impl Sized {}

10 LL | fn captured_early<'a: 'a>() -> impl Sized + Captures<'a> {}
12 
- error: [o]
+ error: []
14   --> $DIR/variance.rs:21:40
14   --> $DIR/variance.rs:21:40
15    |
16 LL | fn not_captured_late<'a>(_: &'a ()) -> impl Sized {}

The actual stderr differed from the expected stderr.
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.new/variance.new.stderr
To only update this specific test, also pass `--test-args impl-trait/variance.rs`

error in revision `new`: 1 errors occurred comparing output.
status: exit status: 1
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/impl-trait/variance.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.new/auxiliary"
--- stderr -------------------------------
error: [*]
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:14:36
   |
   |
LL | fn not_captured_early<'a: 'a>() -> impl Sized {}


error: [*, o]
   |
   |
LL | fn captured_early<'a: 'a>() -> impl Sized + Captures<'a> {} //~ [*, o]

error: []
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:21:40
   |
   |
LL | fn not_captured_late<'a>(_: &'a ()) -> impl Sized {}

error: [o]
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:26:36
   |
   |
LL | fn captured_late<'a>(_: &'a ()) -> impl Sized + Captures<'a> {} //~ [o]

error: aborting due to 4 previous errors
------------------------------------------



---- [ui] tests/ui/impl-trait/variance.rs#e2024 stdout ----
diff of stderr:

- error: [*, o]
+ error: [*]
3    |
3    |
4 LL | fn not_captured_early<'a: 'a>() -> impl Sized {}

10 LL | fn captured_early<'a: 'a>() -> impl Sized + Captures<'a> {}
12 
- error: [o]
+ error: []
14   --> $DIR/variance.rs:21:40
14   --> $DIR/variance.rs:21:40
15    |
16 LL | fn not_captured_late<'a>(_: &'a ()) -> impl Sized {}

The actual stderr differed from the expected stderr.
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.e2024/variance.e2024.stderr
To only update this specific test, also pass `--test-args impl-trait/variance.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/impl-trait/variance.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/variance.e2024/auxiliary" "--edition=2024" "-Z" "unstable-options"
--- stderr -------------------------------
error: [*]
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:14:36
   |
   |
LL | fn not_captured_early<'a: 'a>() -> impl Sized {}


error: [*, o]
   |
   |
LL | fn captured_early<'a: 'a>() -> impl Sized + Captures<'a> {} //~ [*, o]

error: []
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:21:40
   |
   |
LL | fn not_captured_late<'a>(_: &'a ()) -> impl Sized {}

error: [o]
##[error]  --> /checkout/tests/ui/impl-trait/variance.rs:26:36
   |
   |
LL | fn captured_late<'a>(_: &'a ()) -> impl Sized + Captures<'a> {} //~ [o]

error: aborting due to 4 previous errors
------------------------------------------

---
--- stderr -------------------------------
warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:9:14
   |
LL |     let _y = &X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: `#[warn(static_mut_refs)]` on by default
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let _y = addr_of!(X);

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:12:18
   |
   |
LL |     let ref _a = X;
   |                  ^ shared reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let ref _a = addr_of!(X);

warning: creating a mutable reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:15:22
   |
   |
LL |     let ref mut _a = X;
   |                      ^ mutable reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |     let ref mut _a = addr_of_mut!(X);

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:18:21
   |
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let (_b, _c) = (addr_of!(X), &mut Y);

warning: creating a mutable reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:18:25
   |
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |     let (_b, _c) = (&X, addr_of_mut!(Y));

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:22:9
   |
---
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |     foo(addr_of!(X));

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:9:15
   |
   |
LL |     let _y = &X;
   |               ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:5:1
  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:5:1
   |
LL | unsafe fn _foo() {
   = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:12:18
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:12:18
   |
LL |     let ref _a = X;
   |                  ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:15:22
   |
LL |     let ref mut _a = X;
   |                      ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:18:22
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |                      ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-of-mut-static-unsafe-fn.rs:18:30
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |                              ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
---
16 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static-safe.e2024/reference-to-mut-static-safe.e2024.stderr
To only update this specific test, also pass `--test-args static/reference-to-mut-static-safe.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/static/reference-to-mut-static-safe.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static-safe.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static-safe.e2024/auxiliary" "--edition" "2024" "-Z" "unstable-options"
--- stderr -------------------------------
warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-safe.rs:9:14
   |
---
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
2   --> $DIR/reference-of-mut-static.rs:16:18
3    |
4 LL |         let _y = &X;
5    |                  ^^ shared reference to mutable static
6    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
---
+ LL | #![deny(static_mut_refs)]
+    |         ^^^^^^^^^^^^^^^
8 help: use `addr_of!` instead to create a raw pointer
9    |
10 LL |         let _y = addr_of!(X);
11    |                  ~~~~~~~~~~~
12 
- error[E0796]: creating a mutable reference to a mutable static
+ error: creating a mutable reference to mutable static is discouraged
+ error: creating a mutable reference to mutable static is discouraged
14   --> $DIR/reference-of-mut-static.rs:20:18
15    |
16 LL |         let _y = &mut X;
17    |                  ^^^^^^ mutable reference to mutable static
18    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
19    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
20 help: use `addr_of_mut!` instead to create a raw pointer
21    |

22 LL |         let _y = addr_of_mut!(X);
24 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
26   --> $DIR/reference-of-mut-static.rs:28:22
26   --> $DIR/reference-of-mut-static.rs:28:22
27    |
28 LL |         let ref _a = X;
29    |                      ^ shared reference to mutable static
30    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
31    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
32 help: use `addr_of!` instead to create a raw pointer
33    |

34 LL |         let ref _a = addr_of!(X);
36 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
38   --> $DIR/reference-of-mut-static.rs:32:25
38   --> $DIR/reference-of-mut-static.rs:32:25
39    |
40 LL |         let (_b, _c) = (&X, &Y);
41    |                         ^^ shared reference to mutable static
42    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
43    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
44 help: use `addr_of!` instead to create a raw pointer
45    |

46 LL |         let (_b, _c) = (addr_of!(X), &Y);
48 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
50   --> $DIR/reference-of-mut-static.rs:32:29
50   --> $DIR/reference-of-mut-static.rs:32:29
51    |
52 LL |         let (_b, _c) = (&X, &Y);
53    |                             ^^ shared reference to mutable static
54    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
55    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
56 help: use `addr_of!` instead to create a raw pointer
57    |

58 LL |         let (_b, _c) = (&X, addr_of!(Y));
60 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
62   --> $DIR/reference-of-mut-static.rs:38:13
---
76 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-of-mut-static.e2024/reference-of-mut-static.e2024.stderr
To only update this specific test, also pass `--test-args static/reference-of-mut-static.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/static/reference-of-mut-static.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-of-mut-static.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-of-mut-static.e2024/auxiliary" "--edition" "2024" "-Z" "unstable-options"
--- stderr -------------------------------
error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:16:18
   |
   |
LL |         let _y = &X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
note: the lint level is defined here
  --> /checkout/tests/ui/static/reference-of-mut-static.rs:6:9
   |
LL | #![deny(static_mut_refs)]
   |         ^^^^^^^^^^^^^^^
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let _y = addr_of!(X);

error: creating a mutable reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:20:18
   |
   |
LL |         let _y = &mut X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |         let _y = addr_of_mut!(X);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:28:22
   |
   |
LL |         let ref _a = X;
   |                      ^ shared reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let ref _a = addr_of!(X);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:32:25
   |
   |
LL |         let (_b, _c) = (&X, &Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let (_b, _c) = (addr_of!(X), &Y);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:32:29
   |
   |
LL |         let (_b, _c) = (&X, &Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let (_b, _c) = (&X, addr_of!(Y));

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-of-mut-static.rs:38:13
   |
---
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         foo(addr_of!(X));

error: aborting due to 6 previous errors
------------------------------------------

---
--- stderr -------------------------------
warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:9:14
   |
LL |     let _y = &X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: `#[warn(static_mut_refs)]` on by default
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let _y = addr_of!(X);

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:12:18
   |
   |
LL |     let ref _a = X;
   |                  ^ shared reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let ref _a = addr_of!(X);

warning: creating a mutable reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:15:22
   |
   |
LL |     let ref mut _a = X;
   |                      ^ mutable reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |     let ref mut _a = addr_of_mut!(X);

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:18:21
   |
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |     let (_b, _c) = (addr_of!(X), &mut Y);

warning: creating a mutable reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:18:25
   |
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |     let (_b, _c) = (&X, addr_of_mut!(Y));

warning: creating a shared reference to mutable static is discouraged
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:22:9
   |
---
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |     foo(addr_of!(X));

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:9:15
   |
   |
LL |     let _y = &X;
   |               ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:5:1
  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:5:1
   |
LL | unsafe fn _foo() {
   = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:12:18
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:12:18
   |
LL |     let ref _a = X;
   |                  ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:15:22
   |
LL |     let ref mut _a = X;
   |                      ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:18:22
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |                      ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
warning: use of mutable static is unsafe and requires unsafe block (error E0133)
##[warning]  --> /checkout/tests/ui/static/reference-to-mut-static-unsafe-fn.rs:18:30
   |
LL |     let (_b, _c) = (&X, &mut Y);
   |                              ^ use of mutable static
   = note: for more information, see issue #71668 <https://github.com/rust-lang/rust/issues/71668>
   = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior

warning: use of mutable static is unsafe and requires unsafe block (error E0133)
---
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
2   --> $DIR/reference-to-mut-static.rs:16:18
3    |
4 LL |         let _y = &X;
5    |                  ^^ shared reference to mutable static
6    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
---
+ LL | #![deny(static_mut_refs)]
+    |         ^^^^^^^^^^^^^^^
8 help: use `addr_of!` instead to create a raw pointer
9    |
10 LL |         let _y = addr_of!(X);
11    |                  ~~~~~~~~~~~
12 
- error[E0796]: creating a mutable reference to a mutable static
+ error: creating a mutable reference to mutable static is discouraged
+ error: creating a mutable reference to mutable static is discouraged
14   --> $DIR/reference-to-mut-static.rs:20:18
15    |
16 LL |         let _y = &mut X;
17    |                  ^^^^^^ mutable reference to mutable static
18    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
19    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
20 help: use `addr_of_mut!` instead to create a raw pointer
21    |

22 LL |         let _y = addr_of_mut!(X);
24 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
26   --> $DIR/reference-to-mut-static.rs:28:22
26   --> $DIR/reference-to-mut-static.rs:28:22
27    |
28 LL |         let ref _a = X;
29    |                      ^ shared reference to mutable static
30    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
31    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
32 help: use `addr_of!` instead to create a raw pointer
33    |

34 LL |         let ref _a = addr_of!(X);
36 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
38   --> $DIR/reference-to-mut-static.rs:32:25
38   --> $DIR/reference-to-mut-static.rs:32:25
39    |
40 LL |         let (_b, _c) = (&X, &Y);
41    |                         ^^ shared reference to mutable static
42    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
43    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
44 help: use `addr_of!` instead to create a raw pointer
45    |

46 LL |         let (_b, _c) = (addr_of!(X), &Y);
48 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
50   --> $DIR/reference-to-mut-static.rs:32:29
50   --> $DIR/reference-to-mut-static.rs:32:29
51    |
52 LL |         let (_b, _c) = (&X, &Y);
53    |                             ^^ shared reference to mutable static
54    |
+    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
+    = note: this will be a hard error in the 2024 edition
+    = note: this will be a hard error in the 2024 edition
55    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
56 help: use `addr_of!` instead to create a raw pointer
57    |

58 LL |         let (_b, _c) = (&X, addr_of!(Y));
60 
- error[E0796]: creating a shared reference to a mutable static
+ error: creating a shared reference to mutable static is discouraged
62   --> $DIR/reference-to-mut-static.rs:38:13
---
76 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static.e2024/reference-to-mut-static.e2024.stderr
To only update this specific test, also pass `--test-args static/reference-to-mut-static.rs`


error in revision `e2024`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/static/reference-to-mut-static.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "e2024" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static.e2024" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/static/reference-to-mut-static.e2024/auxiliary" "--edition" "2024" "-Z" "unstable-options"
--- stderr -------------------------------
error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:16:18
   |
   |
LL |         let _y = &X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
note: the lint level is defined here
  --> /checkout/tests/ui/static/reference-to-mut-static.rs:6:9
   |
LL | #![deny(static_mut_refs)]
   |         ^^^^^^^^^^^^^^^
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let _y = addr_of!(X);

error: creating a mutable reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:20:18
   |
   |
LL |         let _y = &mut X;
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
   = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
help: use `addr_of_mut!` instead to create a raw pointer
   |
LL |         let _y = addr_of_mut!(X);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:28:22
   |
   |
LL |         let ref _a = X;
   |                      ^ shared reference to mutable static
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let ref _a = addr_of!(X);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:32:25
   |
   |
LL |         let (_b, _c) = (&X, &Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let (_b, _c) = (addr_of!(X), &Y);

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:32:29
   |
   |
LL |         let (_b, _c) = (&X, &Y);
   |
   = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         let (_b, _c) = (&X, addr_of!(Y));

error: creating a shared reference to mutable static is discouraged
##[error]  --> /checkout/tests/ui/static/reference-to-mut-static.rs:38:13
   |
---
   = note: this will be a hard error in the 2024 edition
   = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
help: use `addr_of!` instead to create a raw pointer
   |
LL |         foo(addr_of!(X));

error: aborting due to 6 previous errors
------------------------------------------

@bors
Copy link
Contributor

bors commented Mar 29, 2024

☀️ Try build successful - checks-actions
Build commit: 36dbcae (36dbcaee1a55543dfc181be52a69d99ff46ff62f)

@ehuss
Copy link
Contributor Author

ehuss commented Mar 29, 2024

@craterbot check crates=top-5000 p=1

@craterbot
Copy link
Collaborator

👌 Experiment pr-122960-2 created and queued.
🤖 Automatically detected try build 36dbcae
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 29, 2024
@craterbot
Copy link
Collaborator

🚧 Experiment pr-122960-2 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-122960-2 is completed!
📊 6 regressed and 614 fixed (5000 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Mar 31, 2024
@ehuss
Copy link
Contributor Author

ehuss commented Mar 31, 2024

@craterbot check p=1

@craterbot
Copy link
Collaborator

👌 Experiment pr-122960-3 created and queued.
🤖 Automatically detected try build 36dbcae
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 31, 2024
@craterbot
Copy link
Collaborator

🚧 Experiment pr-122960-3 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-122960-3 is completed!
📊 898 regressed and 62582 fixed (432591 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Apr 3, 2024
@ehuss
Copy link
Contributor Author

ehuss commented Apr 6, 2024

@craterbot check cap-lints=allow

@craterbot
Copy link
Collaborator

👌 Experiment pr-122960-4 created and queued.
🤖 Automatically detected try build 36dbcae
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 6, 2024
@craterbot
Copy link
Collaborator

🚧 Experiment pr-122960-4 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-122960-4 is completed!
📊 33 regressed and 61076 fixed (434664 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Apr 9, 2024
@ehuss ehuss closed this Apr 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants