1error[E0277]: the size for values of type `A` cannot be known at compilation time 2 --> $DIR/extern-types-unsized.rs:22:20 3 | 4LL | assert_sized::<A>(); 5 | ^ doesn't have a size known at compile-time 6 | 7 = help: the trait `Sized` is not implemented for `A` 8note: required by a bound in `assert_sized` 9 --> $DIR/extern-types-unsized.rs:19:17 10 | 11LL | fn assert_sized<T>() {} 12 | ^ required by this bound in `assert_sized` 13help: consider relaxing the implicit `Sized` restriction 14 | 15LL | fn assert_sized<T: ?Sized>() {} 16 | ++++++++ 17 18error[E0277]: the size for values of type `A` cannot be known at compilation time 19 --> $DIR/extern-types-unsized.rs:25:5 20 | 21LL | assert_sized::<Foo>(); 22 | ^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 23 | 24 = help: within `Foo`, the trait `Sized` is not implemented for `A` 25note: required because it appears within the type `Foo` 26 --> $DIR/extern-types-unsized.rs:9:8 27 | 28LL | struct Foo { 29 | ^^^ 30note: required by a bound in `assert_sized` 31 --> $DIR/extern-types-unsized.rs:19:17 32 | 33LL | fn assert_sized<T>() {} 34 | ^ required by this bound in `assert_sized` 35help: consider relaxing the implicit `Sized` restriction 36 | 37LL | fn assert_sized<T: ?Sized>() {} 38 | ++++++++ 39 40error[E0277]: the size for values of type `A` cannot be known at compilation time 41 --> $DIR/extern-types-unsized.rs:28:5 42 | 43LL | assert_sized::<Bar<A>>(); 44 | ^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 45 | 46 = help: within `Bar<A>`, the trait `Sized` is not implemented for `A` 47note: required because it appears within the type `Bar<A>` 48 --> $DIR/extern-types-unsized.rs:14:8 49 | 50LL | struct Bar<T: ?Sized> { 51 | ^^^ 52note: required by a bound in `assert_sized` 53 --> $DIR/extern-types-unsized.rs:19:17 54 | 55LL | fn assert_sized<T>() {} 56 | ^ required by this bound in `assert_sized` 57help: consider relaxing the implicit `Sized` restriction 58 | 59LL | fn assert_sized<T: ?Sized>() {} 60 | ++++++++ 61 62error[E0277]: the size for values of type `A` cannot be known at compilation time 63 --> $DIR/extern-types-unsized.rs:31:5 64 | 65LL | assert_sized::<Bar<Bar<A>>>(); 66 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time 67 | 68 = help: within `Bar<Bar<A>>`, the trait `Sized` is not implemented for `A` 69note: required because it appears within the type `Bar<A>` 70 --> $DIR/extern-types-unsized.rs:14:8 71 | 72LL | struct Bar<T: ?Sized> { 73 | ^^^ 74note: required because it appears within the type `Bar<Bar<A>>` 75 --> $DIR/extern-types-unsized.rs:14:8 76 | 77LL | struct Bar<T: ?Sized> { 78 | ^^^ 79note: required by a bound in `assert_sized` 80 --> $DIR/extern-types-unsized.rs:19:17 81 | 82LL | fn assert_sized<T>() {} 83 | ^ required by this bound in `assert_sized` 84help: consider relaxing the implicit `Sized` restriction 85 | 86LL | fn assert_sized<T: ?Sized>() {} 87 | ++++++++ 88 89error: aborting due to 4 previous errors 90 91For more information about this error, try `rustc --explain E0277`. 92