diff --git a/src/test/compile-fail/block-coerce-no-2.rs b/src/test/compile-fail/block-coerce-no-2.rs
index 9726dc9b4c9..2ec79788c7c 100644
--- a/src/test/compile-fail/block-coerce-no-2.rs
+++ b/src/test/compile-fail/block-coerce-no-2.rs
@@ -9,5 +9,5 @@ fn main() {
     }
 
     f(g);
-    //~^ ERROR mismatched types: expected `extern fn(extern fn(extern fn()))`
+    //~^ ERROR mismatched types: expected `fn(fn(fn&()))`
 }
diff --git a/src/test/compile-fail/block-coerce-no.rs b/src/test/compile-fail/block-coerce-no.rs
index dfa2fdab6e3..f4445685665 100644
--- a/src/test/compile-fail/block-coerce-no.rs
+++ b/src/test/compile-fail/block-coerce-no.rs
@@ -6,7 +6,7 @@ fn coerce(b: fn()) -> extern fn() {
            g: fn()) -> extern fn() { return f(g); }
     fn fn_id(f: extern fn()) -> extern fn() { return f }
     return lol(fn_id, b);
-    //~^ ERROR mismatched types: expected `extern fn(fn&()) -> extern fn()`
+    //~^ ERROR mismatched types: expected `fn(fn&()) -> fn()`
 }
 
 fn main() {
diff --git a/src/test/compile-fail/extern-wrong-value-type.rs b/src/test/compile-fail/extern-wrong-value-type.rs
index dccd1279871..ff5771d5cd2 100644
--- a/src/test/compile-fail/extern-wrong-value-type.rs
+++ b/src/test/compile-fail/extern-wrong-value-type.rs
@@ -1,4 +1,4 @@
-// error-pattern:expected `fn&()` but found `*u8`
+// error-pattern:expected `fn&<R0>()` but found `*u8`
 extern fn f() {
 }
 
diff --git a/src/test/compile-fail/fn-compare-mismatch.rs b/src/test/compile-fail/fn-compare-mismatch.rs
index bc78b475843..1e2dfd42f38 100644
--- a/src/test/compile-fail/fn-compare-mismatch.rs
+++ b/src/test/compile-fail/fn-compare-mismatch.rs
@@ -2,5 +2,5 @@ fn main() {
     fn f() { }
     fn g(i: int) { }
     let x = f == g;
-    //~^ ERROR expected `extern fn()` but found `extern fn(int)`
+    //~^ ERROR expected `fn()` but found `fn(int)`
 }
diff --git a/src/test/compile-fail/main-wrong-type-2.rs b/src/test/compile-fail/main-wrong-type-2.rs
index 106b0daf4b3..8c7239504c9 100644
--- a/src/test/compile-fail/main-wrong-type-2.rs
+++ b/src/test/compile-fail/main-wrong-type-2.rs
@@ -1,3 +1,3 @@
 fn main() -> char {
-//~^ ERROR Wrong type in main function: found `extern fn() -> char`
+//~^ ERROR Wrong type in main function: found `fn() -> char`
 }
diff --git a/src/test/compile-fail/main-wrong-type.rs b/src/test/compile-fail/main-wrong-type.rs
index b920f02e069..baaac62e3c4 100644
--- a/src/test/compile-fail/main-wrong-type.rs
+++ b/src/test/compile-fail/main-wrong-type.rs
@@ -1,3 +1,3 @@
 fn main(foo: {x: int, y: int}) {
-//~^ ERROR Wrong type in main function: found `extern fn({x: int,y: int})`
+//~^ ERROR Wrong type in main function: found `fn({x: int,y: int})`
 }
diff --git a/src/test/compile-fail/missing-do.rs b/src/test/compile-fail/missing-do.rs
index 83c6bc32cc9..c9fe0faab8a 100644
--- a/src/test/compile-fail/missing-do.rs
+++ b/src/test/compile-fail/missing-do.rs
@@ -4,6 +4,6 @@ fn foo(f: fn()) { f() }
 
 fn main() {
     ~"" || 42; //~ ERROR binary operation || cannot be applied to type `~str`
-    foo || {}; //~ ERROR binary operation || cannot be applied to type `extern fn(fn&())`
+    foo || {}; //~ ERROR binary operation || cannot be applied to type `fn(fn&())`
     //~^ NOTE did you forget the 'do' keyword for the call?
 }
diff --git a/src/test/compile-fail/pure-subtyping.rs b/src/test/compile-fail/pure-subtyping.rs
index 6725bd19e44..c6f3568087c 100644
--- a/src/test/compile-fail/pure-subtyping.rs
+++ b/src/test/compile-fail/pure-subtyping.rs
@@ -23,14 +23,14 @@ fn assign_to_pure2(x: pure fn@(), y: fn@(), z: unsafe fn@()) {
     let b: pure fn() = y; //~ ERROR expected pure fn but found impure fn
     let c: pure fn() = z; //~ ERROR expected pure fn but found unsafe fn
 
-    let a: pure fn~() = x; //~ ERROR closure protocol mismatch (fn~ vs fn@)
-    let b: pure fn~() = y; //~ ERROR closure protocol mismatch (fn~ vs fn@)
-    let c: pure fn~() = z; //~ ERROR closure protocol mismatch (fn~ vs fn@)
+    let a: pure fn~() = x; //~ ERROR fn storage differs: expected ~ but found @
+    let b: pure fn~() = y; //~ ERROR fn storage differs: expected ~ but found @
+    let c: pure fn~() = z; //~ ERROR fn storage differs: expected ~ but found @
 
-    let a: unsafe fn~() = x; //~ ERROR closure protocol mismatch (fn~ vs fn@)
-    let b: unsafe fn~() = y; //~ ERROR closure protocol mismatch (fn~ vs fn@)
-    let c: unsafe fn~() = z; //~ ERROR closure protocol mismatch (fn~ vs fn@)
+    let a: unsafe fn~() = x; //~ ERROR fn storage differs: expected ~ but found @
+    let b: unsafe fn~() = y; //~ ERROR fn storage differs: expected ~ but found @
+    let c: unsafe fn~() = z; //~ ERROR fn storage differs: expected ~ but found @
 }
 
 fn main() {
-}
\ No newline at end of file
+}