diff options
Diffstat (limited to 'src/test/ui/issues/issue-8783.rs')
-rw-r--r-- | src/test/ui/issues/issue-8783.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-8783.rs b/src/test/ui/issues/issue-8783.rs new file mode 100644 index 000000000..4eb49c821 --- /dev/null +++ b/src/test/ui/issues/issue-8783.rs @@ -0,0 +1,24 @@ +// run-pass +#![allow(unused_variables)] +// pretty-expanded FIXME #23616 + +use std::default::Default; + +struct X { pub x: usize } +impl Default for X { + fn default() -> X { + X { x: 42 } + } +} + +struct Y<T> { pub y: T } +impl<T: Default> Default for Y<T> { + fn default() -> Y<T> { + Y { y: Default::default() } + } +} + +fn main() { + let X { x: _ } = Default::default(); + let Y { y: X { x } } = Default::default(); +} |