]> git.lizzy.rs Git - rust.git/commit
auto merge of #18750 : nikomatsakis/rust/issue-18333-skolemize-open-existential,...
authorbors <bors@rust-lang.org>
Thu, 20 Nov 2014 19:26:40 +0000 (19:26 +0000)
committerbors <bors@rust-lang.org>
Thu, 20 Nov 2014 19:26:40 +0000 (19:26 +0000)
commitd13aff12246ab3c72b0c5f186400a21f825c0a6c
tree6c7396e4b752f97768c4404a583b9cb903e3ebc5
parent96c8f2b0c1846756e617f1f1fc1372c506e24248
parent7a372e23cbab0be6abd3fbd321d0548640568920
auto merge of #18750 : nikomatsakis/rust/issue-18333-skolemize-open-existential, r=nrc

In the general case, at least, it is not possible to make an object out of an unsized type. This is because the object type would have to store the fat pointer information for the `self` value *and* the vtable -- meaning it'd have to be a fat pointer with three words -- but for the compiler to know that the object requires three words, it would have to know the self-type of the object (is `self` a thin or fat pointer?), which of course it doesn't.

Fixes #18333.

r? @nick29581
src/librustc/middle/typeck/check/mod.rs