about summary refs log tree commit diff
path: root/src/rustc
diff options
context:
space:
mode:
Diffstat (limited to 'src/rustc')
-rw-r--r--src/rustc/middle/kind.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/rustc/middle/kind.rs b/src/rustc/middle/kind.rs
index f17a2836ee5..0b86f62eeb9 100644
--- a/src/rustc/middle/kind.rs
+++ b/src/rustc/middle/kind.rs
@@ -4,6 +4,7 @@ import syntax::codemap::span;
 import ty::{kind, kind_copyable, kind_sendable, kind_noncopyable};
 import driver::session::session;
 import std::map::hashmap;
+import util::ppaux::{ty_to_str, tys_to_str};
 import syntax::print::pprust::expr_to_str;
 import freevars::freevar_entry;
 
@@ -267,8 +268,8 @@ fn check_expr(e: @expr, cx: ctx, v: visit::vt<ctx>) {
               // Fail earlier to make debugging easier
               fail #fmt("Internal error: in kind::check_expr, length \
                   mismatch between actual and declared bounds: actual = \
-                  %s (%u tys), declared = %s (%u tys)", ts, ts.len(),
-                        *bounds, bounds.len());
+                  %s (%u tys), declared = %? (%u tys)",
+                  tys_to_str(cx.tcx, ts), ts.len(), *bounds, (*bounds).len());
             }
             vec::iter2(ts, *bounds) {|ty, bound|
                 check_bounds(cx, e.span, ty, bound)