summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorJohn Clements <clements@racket-lang.org>2013-06-07 17:06:57 -0700
committerJohn Clements <clements@racket-lang.org>2013-09-06 13:35:09 -0700
commitd876a721d2efa7cbf7b0224c396a5da9079a8d5d (patch)
treeb300638a280d66f4dae247d5c82a6f5b8c51c529 /src/libsyntax
parent015ba31c02b912220a9b7323e1a6ae3bad4ab927 (diff)
downloadrust-d876a721d2efa7cbf7b0224c396a5da9079a8d5d.tar.gz
rust-d876a721d2efa7cbf7b0224c396a5da9079a8d5d.zip
new test that uncovers bug in fold
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/fold.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libsyntax/fold.rs b/src/libsyntax/fold.rs
index 5a099c96fa1..f8671623992 100644
--- a/src/libsyntax/fold.rs
+++ b/src/libsyntax/fold.rs
@@ -1019,4 +1019,15 @@ mod test {
                                     token::get_ident_interner()),
                      ~"zz!zz((zz$zz:zz$(zz $zz:zz)zz+=>(zz$(zz$zz$zz)+)))");
     }
+
+    // and in cast expressions... this appears to be an existing bug.
+    #[test] fn ident_transformation_in_types () {
+        let zz_fold = fun_to_ident_folder(to_zz());
+        let ast = string_to_crate(@"fn a() {let z = 13 as int;}");
+        assert_pred!(matches_codepattern,
+                     "matches_codepattern",
+                     pprust::to_str(&zz_fold.fold_crate(ast),fake_print_crate,
+                                    token::get_ident_interner()),
+                     ~"fn zz(){let zz=13 as zz;}");
+    }
 }