summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/next-solver/unsize-although-ambiguous.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/traits/next-solver/unsize-although-ambiguous.rs')
-rw-r--r--tests/ui/traits/next-solver/unsize-although-ambiguous.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/ui/traits/next-solver/unsize-although-ambiguous.rs b/tests/ui/traits/next-solver/unsize-although-ambiguous.rs
new file mode 100644
index 000000000..8217701b9
--- /dev/null
+++ b/tests/ui/traits/next-solver/unsize-although-ambiguous.rs
@@ -0,0 +1,13 @@
+// check-pass
+// compile-flags: -Znext-solver
+
+use std::fmt::Display;
+
+fn box_dyn_display(_: Box<dyn Display>) {}
+
+fn main() {
+ // During coercion, we don't necessarily know whether `{integer}` implements
+ // `Display`. Before, that would cause us to bail out in the coercion loop when
+ // checking `{integer}: Unsize<dyn Display>`.
+ box_dyn_display(Box::new(1));
+}