about summary refs log tree commit diff
path: root/tests/ui/issues/issue-23781.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/issues/issue-23781.rs')
-rw-r--r--tests/ui/issues/issue-23781.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/ui/issues/issue-23781.rs b/tests/ui/issues/issue-23781.rs
new file mode 100644
index 00000000000..220ebdb1872
--- /dev/null
+++ b/tests/ui/issues/issue-23781.rs
@@ -0,0 +1,29 @@
+// run-pass
+use std::fmt;
+
+struct Foo;
+impl fmt::Debug for Foo {
+    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
+        println!("<Foo as Debug>::fmt()");
+
+        write!(fmt, "")
+    }
+}
+
+fn test1() {
+    let foo_str = format!("{:?}", Foo);
+
+    println!("{}", foo_str);
+}
+
+fn test2() {
+    println!("{:?}", Foo);
+}
+
+fn main() {
+    // This works fine
+    test1();
+
+    // This fails
+    test2();
+}