diff options
Diffstat (limited to 'tests/ui/traits/unconstrained-projection-normalization.rs')
| -rw-r--r-- | tests/ui/traits/unconstrained-projection-normalization.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/ui/traits/unconstrained-projection-normalization.rs b/tests/ui/traits/unconstrained-projection-normalization.rs new file mode 100644 index 00000000000..e4d25a5ba6c --- /dev/null +++ b/tests/ui/traits/unconstrained-projection-normalization.rs @@ -0,0 +1,16 @@ +// Make sure we don't ICE in `normalize_erasing_regions` when normalizing +// an associated type in an impl with unconstrained non-lifetime params. + +struct Thing; + +pub trait Every { + type Assoc; +} +impl<T: ?Sized> Every for Thing { +//~^ ERROR the type parameter `T` is not constrained + type Assoc = T; +} + +static I: <Thing as Every>::Assoc = 3; + +fn main() {} |
