diff --git a/tests/common/parse.rs b/tests/common/parse.rs
index 6476cb8..868cc21 100644
--- a/tests/common/parse.rs
+++ b/tests/common/parse.rs
@@ -2,11 +2,13 @@
 extern crate syn;
 extern crate synom;
 extern crate syntax;
+extern crate syntax_pos;
 
 use self::syntax::ast;
 use self::syntax::ptr::P;
 use self::syntax::parse::{self, ParseSess};
 use self::syntax::codemap::FilePathMapping;
+use self::syntax_pos::FileName;
 
 use std::panic;
 
@@ -17,7 +19,7 @@
         let sess = ParseSess::new(FilePathMapping::empty());
         sess.span_diagnostic.set_continue_after_error(false);
         let e = parse::parse_expr_from_source_str(
-            "test_precedence".to_string(),
+            FileName::Custom("test_precedence".to_string()),
             input.to_string(),
             &sess,
         );
diff --git a/tests/test_round_trip.rs b/tests/test_round_trip.rs
index 2cc98e0..64bc2fa 100644
--- a/tests/test_round_trip.rs
+++ b/tests/test_round_trip.rs
@@ -7,12 +7,14 @@
 extern crate rayon;
 extern crate syn;
 extern crate syntax;
+extern crate syntax_pos;
 extern crate walkdir;
 
 use rayon::iter::{ParallelIterator, IntoParallelIterator};
 use syntax::ast;
 use syntax::parse::{self, ParseSess, PResult};
 use syntax::codemap::FilePathMapping;
+use syntax_pos::FileName;
 use walkdir::{WalkDir, WalkDirIterator, DirEntry};
 
 use std::fs::File;
@@ -127,7 +129,7 @@
 }
 
 fn libsyntax_parse(content: String, sess: &ParseSess) -> PResult<ast::Crate> {
-    let name = "test_round_trip".to_string();
+    let name = FileName::Custom("test_round_trip".to_string());
     parse::parse_crate_from_source_str(name, content, sess)
         .map(common::respan::respan_crate)
 }
