diff --git a/src/rustc/middle/typeck.rs b/src/rustc/middle/typeck.rs
index 88911e2eae7..a5e0b3f0ade 100644
--- a/src/rustc/middle/typeck.rs
+++ b/src/rustc/middle/typeck.rs
@@ -2163,10 +2163,9 @@ fn check_expr_with_unifier(fcx: @fn_ctxt, expr: @ast::expr, unify: unifier,
                 require_unsafe(tcx.sess, fcx.purity, expr.span);
               }
               _ {
-                tcx.sess.span_err(expr.span,
-                                    "dereferencing non-" +
-                                        "dereferenceable type: " +
-                                        ty_to_str(tcx, oper_t));
+                  tcx.sess.span_err(expr.span,
+                      #fmt("Type %s cannot be dereferenced",
+                           ty_to_str(tcx, oper_t)));
               }
             }
           }
diff --git a/src/test/compile-fail/deref-non-pointer.rs b/src/test/compile-fail/deref-non-pointer.rs
new file mode 100644
index 00000000000..3e4b7b73b60
--- /dev/null
+++ b/src/test/compile-fail/deref-non-pointer.rs
@@ -0,0 +1,6 @@
+// error-pattern:cannot be dereferenced
+fn main() {
+  alt *1 {
+      _ { fail; }
+  }
+}
\ No newline at end of file