diff options
| author | bors <bors@rust-lang.org> | 2025-08-29 16:21:11 +0000 | 
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-08-29 16:21:11 +0000 | 
| commit | fe55364329579d361b1ab565728bc033a7dba07e (patch) | |
| tree | a2dc4bbf41193de24388655ac6751d11b5876e10 /tests/ui/static/static-struct-initialization-5688.rs | |
| parent | db3fd4708c3916bbc59b81ff7d3f6e19d11820c7 (diff) | |
| parent | 197cb260e40aeae1f7569bc008a0aa3e11a12484 (diff) | |
| download | rust-fe55364329579d361b1ab565728bc033a7dba07e.tar.gz rust-fe55364329579d361b1ab565728bc033a7dba07e.zip | |
Auto merge of #145997 - matthiaskrgr:rollup-tsgylre, r=matthiaskrgr
Rollup of 4 pull requests Successful merges: - rust-lang/rust#145675 (Rehome 30 `tests/ui/issues/` tests to other subdirectories under `tests/ui/` [rust-lang/rust#1 of Batch rust-lang/rust#2]) - rust-lang/rust#145676 (Rehome 30 `tests/ui/issues/` tests to other subdirectories under `tests/ui/` [rust-lang/rust#2 of Batch rust-lang/rust#2]) - rust-lang/rust#145982 (compiletest: Reduce the number of `println!` calls that don't have access to `TestCx`) - rust-lang/rust#145984 (`TokenStream` cleanups) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'tests/ui/static/static-struct-initialization-5688.rs')
| -rw-r--r-- | tests/ui/static/static-struct-initialization-5688.rs | 21 | 
1 files changed, 21 insertions, 0 deletions
| diff --git a/tests/ui/static/static-struct-initialization-5688.rs b/tests/ui/static/static-struct-initialization-5688.rs new file mode 100644 index 00000000000..6a4c2f45b6b --- /dev/null +++ b/tests/ui/static/static-struct-initialization-5688.rs @@ -0,0 +1,21 @@ +// https://github.com/rust-lang/rust/issues/5688 +//@ run-pass +/* +# Corrupted initialization in the static struct + +...should print &[1, 2, 3] but instead prints something like +&[4492532864, 24]. It is pretty evident that the compiler messed up +with the representation of [isize; n] and [isize] somehow, or at least +failed to typecheck correctly. +*/ + +#[derive(Copy, Clone)] +struct X { vec: &'static [isize] } + +static V: &'static [X] = &[X { vec: &[1, 2, 3] }]; + +pub fn main() { + for &v in V { + println!("{:?}", v.vec); + } +} | 
