mirror of
https://github.com/rust-lang/rust.git
synced 2025-09-27 12:48:20 +00:00
19 lines
554 B
Rust
19 lines
554 B
Rust
// issue: rust-lang/rust#126939
|
|
|
|
//! This used to ICE, because the layout algorithm did not check for unsized types
|
|
//! in the struct tail of always-sized types (i.e. those that cannot be unsized)
|
|
//! and incorrectly returned an unsized layout.
|
|
|
|
struct MySlice<T>(T);
|
|
type MySliceBool = MySlice<[bool]>;
|
|
|
|
struct P2 {
|
|
b: MySliceBool,
|
|
//~^ ERROR: the size for values of type `[bool]` cannot be known at compilation time
|
|
}
|
|
|
|
static CHECK: () = assert!(align_of::<P2>() == 1);
|
|
//~^ ERROR the type `MySlice<[bool]>` has an unknown layout
|
|
|
|
fn main() {}
|