rust/tests
bors e2dc1a1c0f Auto merge of #129970 - lukas-code:LayoutCalculator, r=compiler-errors
layout computation: gracefully handle unsized types in unexpected locations

This PR reworks the layout computation to eagerly return an error when encountering an unsized field where a sized field was expected, rather than delaying a bug and attempting to recover a layout. This is required, because with trivially false where clauses like `[T]: Sized`, any field can possible be an unsized type, without causing a compile error.

Since this PR removes the `delayed_bug` method from the `LayoutCalculator` trait, it essentially becomes the same as the `HasDataLayout` trait, so I've also refactored the `LayoutCalculator` to be a simple wrapper struct around a type that implements `HasDataLayout`.

The majority of the diff is whitespace changes, so viewing with whitespace ignored is advised.

implements https://github.com/rust-lang/rust/pull/123169#issuecomment-2025788480

r? `@compiler-errors` or compiler

fixes https://github.com/rust-lang/rust/issues/123134
fixes https://github.com/rust-lang/rust/issues/124182
fixes https://github.com/rust-lang/rust/issues/126939
fixes https://github.com/rust-lang/rust/issues/127737
2024-09-17 01:17:48 +00:00
..
assembly Ignore reduce-fadd-unordered on SGX platform 2024-09-16 16:54:48 +02:00
auxiliary
codegen Update try_question_mark_nop.rs test 2024-09-14 13:30:36 +08:00
codegen-units Fix and enable disabled codegen-units tests 2024-08-10 14:03:27 -04:00
coverage coverage: Extract executor::block_on from several async coverage tests 2024-09-10 16:08:36 +10:00
coverage-run-rustdoc coverage: Extract hole spans from HIR instead of MIR 2024-07-08 21:22:56 +10:00
crashes Auto merge of #129970 - lukas-code:LayoutCalculator, r=compiler-errors 2024-09-17 01:17:48 +00:00
debuginfo Auto merge of #130052 - khuey:clear-dilocation-after-const-emission, r=michaelwoerister 2024-09-13 08:57:41 +00:00
incremental simd_shuffle: require index argument to be a vector 2024-09-14 14:43:24 +02:00
mir-opt Simplify the canonical clone method to copy 2024-09-14 13:30:35 +08:00
pretty Use doc(hidden) instead of allow(missing_docs) in the test harness 2024-09-11 12:14:35 +02:00
run-make Rollup merge of #130156 - nebulark:test_buildinfo, r=jieyouxu 2024-09-12 20:37:15 +10:00
run-pass-valgrind
rustdoc rustdoc: rename issue-\d+.rs tests to have meaningful names 2024-09-12 13:47:51 -07:00
rustdoc-gui Rollup merge of #129796 - GuillaumeGomez:unify-code-examples, r=notriddle 2024-09-05 18:58:56 +02:00
rustdoc-js rustdoc-search: allow trailing Foo -> arg search 2024-09-05 17:58:05 -07:00
rustdoc-js-std rustdoc-search: allow trailing Foo -> arg search 2024-09-05 17:58:05 -07:00
rustdoc-json rustdoc: normalise type/field names in rustdoc-json-types/jsondoclint 2024-09-01 23:58:08 +03:00
rustdoc-ui rustdoc: re-bless stderrs after renaming the test case 2024-09-12 13:48:51 -07:00
ui Auto merge of #129970 - lukas-code:LayoutCalculator, r=compiler-errors 2024-09-17 01:17:48 +00:00
ui-fulldeps Re-enable ConstArgKind::Path lowering by default 2024-09-12 13:56:01 -04:00
COMPILER_TESTS.md