diff --git a/Cargo.toml b/Cargo.toml
index b34f71e..7eae558 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -21,12 +21,12 @@
 [dependencies]
 clippy = { version = "0.*", optional = true }
 quote = { version = "0.3.0", optional = true }
-syntex_syntax = { version = "0.47.0", optional = true }
+syntex_syntax = { version = "0.50.0", optional = true }
 unicode-xid = { version = "0.0.3", optional = true }
 
 [dev-dependencies]
-syntex_pos = "0.47.0"
-syntex_syntax = "0.47.0"
+syntex_pos = "0.50.0"
+syntex_syntax = "0.50.0"
 tempdir = "0.3.5"
 time = "0.1.35"
 walkdir = "1.0.1"
diff --git a/src/registry.rs b/src/registry.rs
index 1d16805..24e1c6b 100644
--- a/src/registry.rs
+++ b/src/registry.rs
@@ -361,9 +361,8 @@
 
     let name = "syn".to_string();
     let source = tokens.to_string();
-    let cfg = Vec::new();
     let sess = ParseSess::new();
-    let krate = match parse::parse_crate_from_source_str(name, source, cfg, &sess) {
+    let krate = match parse::parse_crate_from_source_str(name, source, &sess) {
         Ok(krate) => krate,
         Err(mut err) => {
             err.emit();
diff --git a/tests/rust b/tests/rust
index f5a702d..fc2373c 160000
--- a/tests/rust
+++ b/tests/rust
@@ -1 +1 @@
-Subproject commit f5a702dc785760c74960007af389caa47546fa58
+Subproject commit fc2373c5a24646745dcbc14dc58889a9d8843f4e
diff --git a/tests/test_round_trip.rs b/tests/test_round_trip.rs
index 47c4aca..2d808b5 100644
--- a/tests/test_round_trip.rs
+++ b/tests/test_round_trip.rs
@@ -140,8 +140,7 @@
 
 fn syntex_parse<'a>(content: String, sess: &'a ParseSess) -> PResult<'a, ast::Crate> {
     let name = "test_round_trip".to_string();
-    let cfg = Vec::new();
-    parse::parse_crate_from_source_str(name, content, cfg, sess).map(respan_crate)
+    parse::parse_crate_from_source_str(name, content, sess).map(respan_crate)
 }
 
 fn respan_crate(krate: ast::Crate) -> ast::Crate {
@@ -370,7 +369,13 @@
                 Token::Literal(lit, repr) => Token::Literal(self.fold_lit(lit), repr),
                 Token::Ident(id) => Token::Ident(self.fold_ident(id)),
                 Token::Lifetime(id) => Token::Lifetime(self.fold_ident(id)),
-                Token::Interpolated(nt) => Token::Interpolated(self.fold_interpolated(nt)),
+                Token::Interpolated(nt) => {
+                    let nt = match Rc::try_unwrap(nt) {
+                        Ok(nt) => nt,
+                        Err(nt) => (*nt).clone(),
+                    };
+                    Token::Interpolated(Rc::new(self.fold_interpolated(nt)))
+                }
                 Token::SubstNt(ident) => Token::SubstNt(self.fold_ident(ident)),
                 Token::MatchNt(name, kind) => {
                     Token::MatchNt(self.fold_ident(name), self.fold_ident(kind))
