about summary refs log tree commit diff
path: root/src/rustc
diff options
context:
space:
mode:
Diffstat (limited to 'src/rustc')
-rw-r--r--src/rustc/metadata/astencode_gen.rs1751
-rw-r--r--src/rustc/middle/typeck.rs3
-rw-r--r--src/rustc/syntax/ast.rs7
-rw-r--r--src/rustc/syntax/fold.rs1
-rw-r--r--src/rustc/syntax/print/pprust.rs1
5 files changed, 931 insertions, 832 deletions
diff --git a/src/rustc/metadata/astencode_gen.rs b/src/rustc/metadata/astencode_gen.rs
index 5bf9829b99d..167e5666d83 100644
--- a/src/rustc/metadata/astencode_gen.rs
+++ b/src/rustc/metadata/astencode_gen.rs
@@ -570,8 +570,40 @@ fn serialize_32<S: std::serialization::serializer>(s: S, v: syntax::ast::mt) {
                    }
                });
 }
+/*syntax::ast::region*/
+fn serialize_34<S: std::serialization::serializer>(s: S,
+                                                   v: syntax::ast::region) {
+
+    s.emit_enum("syntax::ast::region",
+
+                /*syntax::ast::ident*/
+                {||
+                    alt v {
+                      syntax::ast::re_inferred {
+                        s.emit_enum_variant("syntax::ast::re_inferred", 0u,
+                                            0u, {|| })
+                      }
+                      syntax::ast::re_named(v0) {
+                        s.emit_enum_variant("syntax::ast::re_named", 1u, 1u,
+                                            {||
+                                                {
+                                                    s.emit_enum_variant_arg(0u,
+                                                                            {||
+                                                                                serialize_1(s,
+                                                                                            v0)
+                                                                            })
+                                                }
+                                            })
+                      }
+                      syntax::ast::re_self {
+                        s.emit_enum_variant("syntax::ast::re_self", 2u, 0u,
+                                            {|| })
+                      }
+                    }
+                });
+}
 /*syntax::ast::ty_field_*/
-fn serialize_36<S: std::serialization::serializer>(s: S,
+fn serialize_37<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::ty_field_) {
     s.emit_rec(/*syntax::ast::ident*//*syntax::ast::mt*/
@@ -584,33 +616,33 @@ fn serialize_36<S: std::serialization::serializer>(s: S,
                });
 }
 /*syntax::ast::ty_field*/
-fn serialize_35<S: std::serialization::serializer>(s: S,
+fn serialize_36<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::ty_field) {
 
     s.emit_rec(/*syntax::ast::ty_field_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_36(s, v.node) });
+                                        {|| serialize_37(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*[syntax::ast::ty_field]*/
-fn serialize_34<S: std::serialization::serializer>(s: S,
+fn serialize_35<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [syntax::ast::ty_field]) {
     s.emit_vec(vec::len(v), /*syntax::ast::ty_field*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_35(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_36(s, e) })
                               })
                });
 }
 /*syntax::ast::proto*/
-fn serialize_37<S: std::serialization::serializer>(s: S,
+fn serialize_38<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::proto) {
 
     s.emit_enum("syntax::ast::proto",
@@ -644,7 +676,7 @@ fn serialize_37<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::rmode*/
-fn serialize_42<S: std::serialization::serializer>(s: S,
+fn serialize_43<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::rmode) {
 
     s.emit_enum("syntax::ast::rmode",
@@ -678,7 +710,7 @@ fn serialize_42<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::mode<syntax::ast::rmode>*/
-fn serialize_41<S: std::serialization::serializer>(s: S,
+fn serialize_42<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::mode<syntax::ast::rmode>) {
     s.emit_enum("syntax::ast::inferable",
@@ -692,7 +724,7 @@ fn serialize_41<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_42(s,
+                                                                                serialize_43(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -714,7 +746,7 @@ fn serialize_41<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::arg*/
-fn serialize_40<S: std::serialization::serializer>(s: S,
+fn serialize_41<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::arg) {
 
     s.emit_rec(/*syntax::ast::mode<syntax::ast::rmode>*//*@syntax::ast::ty*/
@@ -722,7 +754,7 @@ fn serialize_40<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("mode", 0u,
-                                        {|| serialize_41(s, v.mode) });
+                                        {|| serialize_42(s, v.mode) });
                        s.emit_rec_field("ty", 1u,
                                         {|| serialize_29(s, v.ty) });
                        s.emit_rec_field("ident", 2u,
@@ -732,19 +764,19 @@ fn serialize_40<S: std::serialization::serializer>(s: S,
                });
 }
 /*[syntax::ast::arg]*/
-fn serialize_39<S: std::serialization::serializer>(s: S,
+fn serialize_40<S: std::serialization::serializer>(s: S,
                                                    v: [syntax::ast::arg]) {
 
     s.emit_vec(vec::len(v), /*syntax::ast::arg*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_40(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_41(s, e) })
                               })
                });
 }
 /*syntax::ast::purity*/
-fn serialize_43<S: std::serialization::serializer>(s: S,
+fn serialize_44<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::purity) {
 
     s.emit_enum("syntax::ast::purity",
@@ -773,7 +805,7 @@ fn serialize_43<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::ret_style*/
-fn serialize_44<S: std::serialization::serializer>(s: S,
+fn serialize_45<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::ret_style) {
     s.emit_enum("syntax::ast::ret_style",
@@ -792,7 +824,7 @@ fn serialize_44<S: std::serialization::serializer>(s: S,
                 });
 }
 /*[syntax::ast::ident]*/
-fn serialize_52<S: std::serialization::serializer>(s: S,
+fn serialize_53<S: std::serialization::serializer>(s: S,
                                                    v: [syntax::ast::ident]) {
 
     s.emit_vec(vec::len(v), /*syntax::ast::ident*/
@@ -804,7 +836,7 @@ fn serialize_52<S: std::serialization::serializer>(s: S,
                });
 }
 /*[@syntax::ast::ty]*/
-fn serialize_53<S: std::serialization::serializer>(s: S,
+fn serialize_54<S: std::serialization::serializer>(s: S,
                                                    v: [@syntax::ast::ty]) {
 
     s.emit_vec(vec::len(v), /*@syntax::ast::ty*/
@@ -816,7 +848,7 @@ fn serialize_53<S: std::serialization::serializer>(s: S,
                });
 }
 /*syntax::ast::path_*/
-fn serialize_51<S: std::serialization::serializer>(s: S,
+fn serialize_52<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::path_) {
 
     s.emit_rec(/*bool*//*[syntax::ast::ident]*//*[@syntax::ast::ty]*/
@@ -825,40 +857,40 @@ fn serialize_51<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("global", 0u,
                                         {|| serialize_18(s, v.global) });
                        s.emit_rec_field("idents", 1u,
-                                        {|| serialize_52(s, v.idents) });
+                                        {|| serialize_53(s, v.idents) });
                        s.emit_rec_field("types", 2u,
-                                        {|| serialize_53(s, v.types) })
+                                        {|| serialize_54(s, v.types) })
                    }
                });
 }
 /*syntax::ast::path*/
-fn serialize_50<S: std::serialization::serializer>(s: S,
+fn serialize_51<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::path) {
 
     s.emit_rec(/*syntax::ast::path_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_51(s, v.node) });
+                                        {|| serialize_52(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::path*/
-fn serialize_49<S: std::serialization::serializer>(s: S,
+fn serialize_50<S: std::serialization::serializer>(s: S,
                                                    v: @syntax::ast::path) {
 
-    s.emit_box(/*syntax::ast::path*/{|| serialize_50(s, *v) });
+    s.emit_box(/*syntax::ast::path*/{|| serialize_51(s, *v) });
 }
 /*@syntax::ast::lit*/
-fn serialize_58<S: std::serialization::serializer>(s: S,
+fn serialize_59<S: std::serialization::serializer>(s: S,
                                                    v: @syntax::ast::lit) {
 
     s.emit_box(/*syntax::ast::lit*/{|| serialize_10(s, *v) });
 }
 /*syntax::ast::constr_arg_general_<uint>*/
-fn serialize_57<S: std::serialization::serializer>(s: S,
+fn serialize_58<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::constr_arg_general_<uint>) {
     s.emit_enum("syntax::ast::constr_arg_general_",
@@ -889,7 +921,7 @@ fn serialize_57<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_58(s,
+                                                                                serialize_59(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -899,7 +931,7 @@ fn serialize_57<S: std::serialization::serializer>(s: S,
                 });
 }
 /*{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-fn serialize_56<S: std::serialization::serializer>(s: S,
+fn serialize_57<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        {node:
                                                             syntax::ast::constr_arg_general_<uint>,
@@ -910,7 +942,7 @@ fn serialize_56<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_57(s, v.node) });
+                                        {|| serialize_58(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
@@ -918,7 +950,7 @@ fn serialize_56<S: std::serialization::serializer>(s: S,
 }
 
 /*@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-fn serialize_55<S: std::serialization::serializer>(s: S,
+fn serialize_56<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @{node:
                                                              syntax::ast::constr_arg_general_<uint>,
@@ -926,11 +958,11 @@ fn serialize_55<S: std::serialization::serializer>(s: S,
                                                              syntax::codemap::span,}) {
     s.emit_box(
                /*{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-               {|| serialize_56(s, *v) });
+               {|| serialize_57(s, *v) });
 }
 
 /*[@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}]*/
-fn serialize_54<S: std::serialization::serializer>(s: S,
+fn serialize_55<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@{node:
                                                               syntax::ast::constr_arg_general_<uint>,
@@ -941,13 +973,13 @@ fn serialize_54<S: std::serialization::serializer>(s: S,
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_55(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_56(s, e) })
                               })
                });
 }
 
 /*{path: @syntax::ast::path,args: [@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}],id: syntax::ast::node_id}*/
-fn serialize_48<S: std::serialization::serializer>(s: S,
+fn serialize_49<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        {path:
                                                             @syntax::ast::path,
@@ -964,15 +996,15 @@ fn serialize_48<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("path", 0u,
-                                        {|| serialize_49(s, v.path) });
+                                        {|| serialize_50(s, v.path) });
                        s.emit_rec_field("args", 1u,
-                                        {|| serialize_54(s, v.args) });
+                                        {|| serialize_55(s, v.args) });
                        s.emit_rec_field("id", 2u, {|| serialize_27(s, v.id) })
                    }
                });
 }
 /*syntax::ast::constr*/
-fn serialize_47<S: std::serialization::serializer>(s: S,
+fn serialize_48<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::constr) {
 
     s.emit_rec(
@@ -981,32 +1013,32 @@ fn serialize_47<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_48(s, v.node) });
+                                        {|| serialize_49(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::constr*/
-fn serialize_46<S: std::serialization::serializer>(s: S,
+fn serialize_47<S: std::serialization::serializer>(s: S,
                                                    v: @syntax::ast::constr) {
 
-    s.emit_box(/*syntax::ast::constr*/{|| serialize_47(s, *v) });
+    s.emit_box(/*syntax::ast::constr*/{|| serialize_48(s, *v) });
 }
 /*[@syntax::ast::constr]*/
-fn serialize_45<S: std::serialization::serializer>(s: S,
+fn serialize_46<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@syntax::ast::constr]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::constr*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_46(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_47(s, e) })
                               })
                });
 }
 /*syntax::ast::fn_decl*/
-fn serialize_38<S: std::serialization::serializer>(s: S,
+fn serialize_39<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::fn_decl) {
 
     s.emit_rec(/*[syntax::ast::arg]*//*@syntax::ast::ty*/
@@ -1015,20 +1047,20 @@ fn serialize_38<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("inputs", 0u,
-                                        {|| serialize_39(s, v.inputs) });
+                                        {|| serialize_40(s, v.inputs) });
                        s.emit_rec_field("output", 1u,
                                         {|| serialize_29(s, v.output) });
                        s.emit_rec_field("purity", 2u,
-                                        {|| serialize_43(s, v.purity) });
+                                        {|| serialize_44(s, v.purity) });
                        s.emit_rec_field("cf", 3u,
-                                        {|| serialize_44(s, v.cf) });
+                                        {|| serialize_45(s, v.cf) });
                        s.emit_rec_field("constraints", 4u,
-                                        {|| serialize_45(s, v.constraints) })
+                                        {|| serialize_46(s, v.constraints) })
                    }
                });
 }
 /*syntax::ast::constr_arg_general_<@syntax::ast::path>*/
-fn serialize_66<S: std::serialization::serializer>(s: S,
+fn serialize_67<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::constr_arg_general_<@syntax::ast::path>) {
     s.emit_enum("syntax::ast::constr_arg_general_",
@@ -1047,7 +1079,7 @@ fn serialize_66<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1059,7 +1091,7 @@ fn serialize_66<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_58(s,
+                                                                                serialize_59(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1070,7 +1102,7 @@ fn serialize_66<S: std::serialization::serializer>(s: S,
 }
 
 /*{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-fn serialize_65<S: std::serialization::serializer>(s: S,
+fn serialize_66<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        {node:
                                                             syntax::ast::constr_arg_general_<@syntax::ast::path>,
@@ -1081,7 +1113,7 @@ fn serialize_65<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_66(s, v.node) });
+                                        {|| serialize_67(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
@@ -1089,7 +1121,7 @@ fn serialize_65<S: std::serialization::serializer>(s: S,
 }
 
 /*@{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-fn serialize_64<S: std::serialization::serializer>(s: S,
+fn serialize_65<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @{node:
                                                              syntax::ast::constr_arg_general_<@syntax::ast::path>,
@@ -1097,11 +1129,11 @@ fn serialize_64<S: std::serialization::serializer>(s: S,
                                                              syntax::codemap::span,}) {
     s.emit_box(
                /*{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-               {|| serialize_65(s, *v) });
+               {|| serialize_66(s, *v) });
 }
 
 /*[@{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}]*/
-fn serialize_63<S: std::serialization::serializer>(s: S,
+fn serialize_64<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@{node:
                                                               syntax::ast::constr_arg_general_<@syntax::ast::path>,
@@ -1112,12 +1144,12 @@ fn serialize_63<S: std::serialization::serializer>(s: S,
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_64(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_65(s, e) })
                               })
                });
 }
 /*syntax::ast::ty_constr_*/
-fn serialize_62<S: std::serialization::serializer>(s: S,
+fn serialize_63<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::ty_constr_) {
     s.emit_rec(/*@syntax::ast::path*/
@@ -1126,59 +1158,59 @@ fn serialize_62<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("path", 0u,
-                                        {|| serialize_49(s, v.path) });
+                                        {|| serialize_50(s, v.path) });
                        s.emit_rec_field("args", 1u,
-                                        {|| serialize_63(s, v.args) });
+                                        {|| serialize_64(s, v.args) });
                        s.emit_rec_field("id", 2u, {|| serialize_27(s, v.id) })
                    }
                });
 }
 /*syntax::ast::ty_constr*/
-fn serialize_61<S: std::serialization::serializer>(s: S,
+fn serialize_62<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::ty_constr) {
     s.emit_rec(/*syntax::ast::ty_constr_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_62(s, v.node) });
+                                        {|| serialize_63(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::ty_constr*/
-fn serialize_60<S: std::serialization::serializer>(s: S,
+fn serialize_61<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @syntax::ast::ty_constr) {
-    s.emit_box(/*syntax::ast::ty_constr*/{|| serialize_61(s, *v) });
+    s.emit_box(/*syntax::ast::ty_constr*/{|| serialize_62(s, *v) });
 }
 /*[@syntax::ast::ty_constr]*/
-fn serialize_59<S: std::serialization::serializer>(s: S,
+fn serialize_60<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@syntax::ast::ty_constr]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::ty_constr*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_60(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_61(s, e) })
                               })
                });
 }
 /*[@syntax::ast::expr]*/
-fn serialize_73<S: std::serialization::serializer>(s: S,
+fn serialize_74<S: std::serialization::serializer>(s: S,
                                                    v: [@syntax::ast::expr]) {
 
     s.emit_vec(vec::len(v), /*@syntax::ast::expr*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_70(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_71(s, e) })
                               })
                });
 }
 /*syntax::ast::field_*/
-fn serialize_76<S: std::serialization::serializer>(s: S,
+fn serialize_77<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::field_) {
 
     s.emit_rec(/*syntax::ast::mutability*//*syntax::ast::ident*/
@@ -1190,38 +1222,38 @@ fn serialize_76<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("ident", 1u,
                                         {|| serialize_1(s, v.ident) });
                        s.emit_rec_field("expr", 2u,
-                                        {|| serialize_70(s, v.expr) })
+                                        {|| serialize_71(s, v.expr) })
                    }
                });
 }
 /*syntax::ast::field*/
-fn serialize_75<S: std::serialization::serializer>(s: S,
+fn serialize_76<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::field) {
 
     s.emit_rec(/*syntax::ast::field_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_76(s, v.node) });
+                                        {|| serialize_77(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*[syntax::ast::field]*/
-fn serialize_74<S: std::serialization::serializer>(s: S,
+fn serialize_75<S: std::serialization::serializer>(s: S,
                                                    v: [syntax::ast::field]) {
 
     s.emit_vec(vec::len(v), /*syntax::ast::field*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_75(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_76(s, e) })
                               })
                });
 }
 /*core::option::t<@syntax::ast::expr>*/
-fn serialize_77<S: std::serialization::serializer>(s: S,
+fn serialize_78<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        core::option::t<@syntax::ast::expr>) {
     s.emit_enum("core::option::t",
@@ -1239,7 +1271,7 @@ fn serialize_77<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1249,19 +1281,19 @@ fn serialize_77<S: std::serialization::serializer>(s: S,
                 });
 }
 /*[core::option::t<@syntax::ast::expr>]*/
-fn serialize_78<S: std::serialization::serializer>(s: S,
+fn serialize_79<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [core::option::t<@syntax::ast::expr>]) {
     s.emit_vec(vec::len(v), /*core::option::t<@syntax::ast::expr>*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_77(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_78(s, e) })
                               })
                });
 }
 /*syntax::ast::binop*/
-fn serialize_79<S: std::serialization::serializer>(s: S,
+fn serialize_80<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::binop) {
 
     s.emit_enum("syntax::ast::binop",
@@ -1353,7 +1385,7 @@ fn serialize_79<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::unop*/
-fn serialize_80<S: std::serialization::serializer>(s: S,
+fn serialize_81<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::unop) {
 
     s.emit_enum("syntax::ast::unop",
@@ -1401,7 +1433,7 @@ fn serialize_80<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::simple_path*/
-fn serialize_92<S: std::serialization::serializer>(s: S,
+fn serialize_93<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::simple_path) {
     s.emit_vec(vec::len(v), /*syntax::ast::ident*/
@@ -1413,13 +1445,13 @@ fn serialize_92<S: std::serialization::serializer>(s: S,
                });
 }
 /*@syntax::ast::simple_path*/
-fn serialize_91<S: std::serialization::serializer>(s: S,
+fn serialize_92<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @syntax::ast::simple_path) {
-    s.emit_box(/*syntax::ast::simple_path*/{|| serialize_92(s, *v) });
+    s.emit_box(/*syntax::ast::simple_path*/{|| serialize_93(s, *v) });
 }
 /*syntax::ast::path_list_ident_*/
-fn serialize_95<S: std::serialization::serializer>(s: S,
+fn serialize_96<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::path_list_ident_) {
     s.emit_rec(/*syntax::ast::ident*//*syntax::ast::node_id*/
@@ -1432,33 +1464,33 @@ fn serialize_95<S: std::serialization::serializer>(s: S,
                });
 }
 /*syntax::ast::path_list_ident*/
-fn serialize_94<S: std::serialization::serializer>(s: S,
+fn serialize_95<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::path_list_ident) {
     s.emit_rec(/*syntax::ast::path_list_ident_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_95(s, v.node) });
+                                        {|| serialize_96(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*[syntax::ast::path_list_ident]*/
-fn serialize_93<S: std::serialization::serializer>(s: S,
+fn serialize_94<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [syntax::ast::path_list_ident]) {
     s.emit_vec(vec::len(v), /*syntax::ast::path_list_ident*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_94(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_95(s, e) })
                               })
                });
 }
 /*syntax::ast::view_path_*/
-fn serialize_90<S: std::serialization::serializer>(s: S,
+fn serialize_91<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::view_path_) {
     s.emit_enum("syntax::ast::view_path_",
@@ -1481,7 +1513,7 @@ fn serialize_90<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_91(s,
+                                                                                serialize_92(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
@@ -1499,7 +1531,7 @@ fn serialize_90<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_91(s,
+                                                                                serialize_92(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -1517,12 +1549,12 @@ fn serialize_90<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_91(s,
+                                                                                serialize_92(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_93(s,
+                                                                                serialize_94(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
@@ -1537,39 +1569,39 @@ fn serialize_90<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::view_path*/
-fn serialize_89<S: std::serialization::serializer>(s: S,
+fn serialize_90<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::view_path) {
     s.emit_rec(/*syntax::ast::view_path_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_90(s, v.node) });
+                                        {|| serialize_91(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::view_path*/
-fn serialize_88<S: std::serialization::serializer>(s: S,
+fn serialize_89<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @syntax::ast::view_path) {
-    s.emit_box(/*syntax::ast::view_path*/{|| serialize_89(s, *v) });
+    s.emit_box(/*syntax::ast::view_path*/{|| serialize_90(s, *v) });
 }
 /*[@syntax::ast::view_path]*/
-fn serialize_87<S: std::serialization::serializer>(s: S,
+fn serialize_88<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@syntax::ast::view_path]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::view_path*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_88(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_89(s, e) })
                               })
                });
 }
 /*syntax::ast::view_item_*/
-fn serialize_86<S: std::serialization::serializer>(s: S,
+fn serialize_87<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::view_item_) {
     s.emit_enum("syntax::ast::view_item_",
@@ -1609,7 +1641,7 @@ fn serialize_86<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_87(s,
+                                                                                serialize_88(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1622,7 +1654,7 @@ fn serialize_86<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_87(s,
+                                                                                serialize_88(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1632,39 +1664,39 @@ fn serialize_86<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::view_item*/
-fn serialize_85<S: std::serialization::serializer>(s: S,
+fn serialize_86<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::view_item) {
     s.emit_rec(/*syntax::ast::view_item_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_86(s, v.node) });
+                                        {|| serialize_87(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::view_item*/
-fn serialize_84<S: std::serialization::serializer>(s: S,
+fn serialize_85<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        @syntax::ast::view_item) {
-    s.emit_box(/*syntax::ast::view_item*/{|| serialize_85(s, *v) });
+    s.emit_box(/*syntax::ast::view_item*/{|| serialize_86(s, *v) });
 }
 /*[@syntax::ast::view_item]*/
-fn serialize_83<S: std::serialization::serializer>(s: S,
+fn serialize_84<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        [@syntax::ast::view_item]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::view_item*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_84(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_85(s, e) })
                               })
                });
 }
 /*core::option::t<@syntax::ast::pat>*/
-fn serialize_110<S: std::serialization::serializer>(s: S,
+fn serialize_111<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         core::option::t<@syntax::ast::pat>) {
     s.emit_enum("core::option::t",
@@ -1682,7 +1714,7 @@ fn serialize_110<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_107(s,
+                                                                                serialize_108(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -1692,19 +1724,19 @@ fn serialize_110<S: std::serialization::serializer>(s: S,
                 });
 }
 /*[@syntax::ast::pat]*/
-fn serialize_111<S: std::serialization::serializer>(s: S,
+fn serialize_112<S: std::serialization::serializer>(s: S,
                                                     v: [@syntax::ast::pat]) {
 
     s.emit_vec(vec::len(v), /*@syntax::ast::pat*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_107(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_108(s, e) })
                               })
                });
 }
 /*syntax::ast::field_pat*/
-fn serialize_113<S: std::serialization::serializer>(s: S,
+fn serialize_114<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::field_pat) {
     s.emit_rec(/*syntax::ast::ident*//*@syntax::ast::pat*/
@@ -1713,24 +1745,24 @@ fn serialize_113<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("ident", 0u,
                                         {|| serialize_1(s, v.ident) });
                        s.emit_rec_field("pat", 1u,
-                                        {|| serialize_107(s, v.pat) })
+                                        {|| serialize_108(s, v.pat) })
                    }
                });
 }
 /*[syntax::ast::field_pat]*/
-fn serialize_112<S: std::serialization::serializer>(s: S,
+fn serialize_113<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::field_pat]) {
     s.emit_vec(vec::len(v), /*syntax::ast::field_pat*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_113(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_114(s, e) })
                               })
                });
 }
 /*syntax::ast::pat_*/
-fn serialize_109<S: std::serialization::serializer>(s: S,
+fn serialize_110<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::pat_) {
 
     s.emit_enum("syntax::ast::pat_",
@@ -1755,12 +1787,12 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_110(s,
+                                                                                serialize_111(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -1772,12 +1804,12 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_111(s,
+                                                                                serialize_112(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -1789,7 +1821,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_112(s,
+                                                                                serialize_113(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -1806,7 +1838,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_111(s,
+                                                                                serialize_112(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -1818,7 +1850,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_107(s,
+                                                                                serialize_108(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -1830,7 +1862,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_107(s,
+                                                                                serialize_108(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -1842,7 +1874,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -1854,12 +1886,12 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -1869,7 +1901,7 @@ fn serialize_109<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::pat*/
-fn serialize_108<S: std::serialization::serializer>(s: S,
+fn serialize_109<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::pat) {
 
     s.emit_rec(/*syntax::ast::node_id*//*syntax::ast::pat_*/
@@ -1879,20 +1911,20 @@ fn serialize_108<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("id", 0u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("node", 1u,
-                                        {|| serialize_109(s, v.node) });
+                                        {|| serialize_110(s, v.node) });
                        s.emit_rec_field("span", 2u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::pat*/
-fn serialize_107<S: std::serialization::serializer>(s: S,
+fn serialize_108<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::pat) {
 
-    s.emit_box(/*syntax::ast::pat*/{|| serialize_108(s, *v) });
+    s.emit_box(/*syntax::ast::pat*/{|| serialize_109(s, *v) });
 }
 /*syntax::ast::init_op*/
-fn serialize_116<S: std::serialization::serializer>(s: S,
+fn serialize_117<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::init_op) {
 
     s.emit_enum("syntax::ast::init_op",
@@ -1911,21 +1943,21 @@ fn serialize_116<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::initializer*/
-fn serialize_115<S: std::serialization::serializer>(s: S,
+fn serialize_116<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::initializer) {
     s.emit_rec(/*syntax::ast::init_op*//*@syntax::ast::expr*/
                {||
                    {
                        s.emit_rec_field("op", 0u,
-                                        {|| serialize_116(s, v.op) });
+                                        {|| serialize_117(s, v.op) });
                        s.emit_rec_field("expr", 1u,
-                                        {|| serialize_70(s, v.expr) })
+                                        {|| serialize_71(s, v.expr) })
                    }
                });
 }
 /*core::option::t<syntax::ast::initializer>*/
-fn serialize_114<S: std::serialization::serializer>(s: S,
+fn serialize_115<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         core::option::t<syntax::ast::initializer>) {
     s.emit_enum("core::option::t",
@@ -1943,7 +1975,7 @@ fn serialize_114<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_115(s,
+                                                                                serialize_116(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -1953,7 +1985,7 @@ fn serialize_114<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::local_*/
-fn serialize_106<S: std::serialization::serializer>(s: S,
+fn serialize_107<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::local_) {
 
     s.emit_rec(/*bool*//*@syntax::ast::ty*//*@syntax::ast::pat*/
@@ -1966,53 +1998,53 @@ fn serialize_106<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("ty", 1u,
                                         {|| serialize_29(s, v.ty) });
                        s.emit_rec_field("pat", 2u,
-                                        {|| serialize_107(s, v.pat) });
+                                        {|| serialize_108(s, v.pat) });
                        s.emit_rec_field("init", 3u,
-                                        {|| serialize_114(s, v.init) });
+                                        {|| serialize_115(s, v.init) });
                        s.emit_rec_field("id", 4u, {|| serialize_27(s, v.id) })
                    }
                });
 }
 /*syntax::ast::local*/
-fn serialize_105<S: std::serialization::serializer>(s: S,
+fn serialize_106<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::local) {
 
     s.emit_rec(/*syntax::ast::local_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_106(s, v.node) });
+                                        {|| serialize_107(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::local*/
-fn serialize_104<S: std::serialization::serializer>(s: S,
+fn serialize_105<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::local) {
 
-    s.emit_box(/*syntax::ast::local*/{|| serialize_105(s, *v) });
+    s.emit_box(/*syntax::ast::local*/{|| serialize_106(s, *v) });
 }
 /*[@syntax::ast::local]*/
-fn serialize_103<S: std::serialization::serializer>(s: S,
+fn serialize_104<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [@syntax::ast::local]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::local*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_104(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_105(s, e) })
                               })
                });
 }
 /*@syntax::ast::item*/
-fn serialize_117<S: std::serialization::serializer>(s: S,
+fn serialize_118<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::item) {
 
     s.emit_box(/*syntax::ast::item*/{|| serialize_0(s, *v) });
 }
 /*syntax::ast::decl_*/
-fn serialize_102<S: std::serialization::serializer>(s: S,
+fn serialize_103<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::decl_) {
 
     s.emit_enum("syntax::ast::decl_",
@@ -2026,7 +2058,7 @@ fn serialize_102<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_103(s,
+                                                                                serialize_104(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -2038,7 +2070,7 @@ fn serialize_102<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_117(s,
+                                                                                serialize_118(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -2048,28 +2080,28 @@ fn serialize_102<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::decl*/
-fn serialize_101<S: std::serialization::serializer>(s: S,
+fn serialize_102<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::decl) {
 
     s.emit_rec(/*syntax::ast::decl_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_102(s, v.node) });
+                                        {|| serialize_103(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::decl*/
-fn serialize_100<S: std::serialization::serializer>(s: S,
+fn serialize_101<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::decl) {
 
-    s.emit_box(/*syntax::ast::decl*/{|| serialize_101(s, *v) });
+    s.emit_box(/*syntax::ast::decl*/{|| serialize_102(s, *v) });
 }
 /*syntax::ast::stmt_*/
-fn serialize_99<S: std::serialization::serializer>(s: S,
-                                                   v: syntax::ast::stmt_) {
+fn serialize_100<S: std::serialization::serializer>(s: S,
+                                                    v: syntax::ast::stmt_) {
 
     s.emit_enum("syntax::ast::stmt_",
                 /*@syntax::ast::decl*//*syntax::ast::node_id*/
@@ -2083,7 +2115,7 @@ fn serialize_99<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_100(s,
+                                                                                serialize_101(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2100,7 +2132,7 @@ fn serialize_99<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2117,7 +2149,7 @@ fn serialize_99<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2132,39 +2164,39 @@ fn serialize_99<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::stmt*/
-fn serialize_98<S: std::serialization::serializer>(s: S,
+fn serialize_99<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::stmt) {
 
     s.emit_rec(/*syntax::ast::stmt_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_99(s, v.node) });
+                                        {|| serialize_100(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::stmt*/
-fn serialize_97<S: std::serialization::serializer>(s: S,
+fn serialize_98<S: std::serialization::serializer>(s: S,
                                                    v: @syntax::ast::stmt) {
 
-    s.emit_box(/*syntax::ast::stmt*/{|| serialize_98(s, *v) });
+    s.emit_box(/*syntax::ast::stmt*/{|| serialize_99(s, *v) });
 }
 /*[@syntax::ast::stmt]*/
-fn serialize_96<S: std::serialization::serializer>(s: S,
+fn serialize_97<S: std::serialization::serializer>(s: S,
                                                    v: [@syntax::ast::stmt]) {
 
     s.emit_vec(vec::len(v), /*@syntax::ast::stmt*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_97(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_98(s, e) })
                               })
                });
 }
 /*syntax::ast::blk_check_mode*/
-fn serialize_118<S: std::serialization::serializer>(s: S,
+fn serialize_119<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::blk_check_mode) {
     s.emit_enum("syntax::ast::blk_check_mode",
@@ -2188,7 +2220,7 @@ fn serialize_118<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::blk_*/
-fn serialize_82<S: std::serialization::serializer>(s: S,
+fn serialize_83<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::blk_) {
 
     s.emit_rec(/*[@syntax::ast::view_item]*//*[@syntax::ast::stmt]*/
@@ -2197,34 +2229,34 @@ fn serialize_82<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("view_items", 0u,
-                                        {|| serialize_83(s, v.view_items) });
+                                        {|| serialize_84(s, v.view_items) });
                        s.emit_rec_field("stmts", 1u,
-                                        {|| serialize_96(s, v.stmts) });
+                                        {|| serialize_97(s, v.stmts) });
                        s.emit_rec_field("expr", 2u,
-                                        {|| serialize_77(s, v.expr) });
+                                        {|| serialize_78(s, v.expr) });
                        s.emit_rec_field("id", 3u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("rules", 4u,
-                                        {|| serialize_118(s, v.rules) })
+                                        {|| serialize_119(s, v.rules) })
                    }
                });
 }
 /*syntax::ast::blk*/
-fn serialize_81<S: std::serialization::serializer>(s: S,
+fn serialize_82<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::blk) {
 
     s.emit_rec(/*syntax::ast::blk_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_82(s, v.node) });
+                                        {|| serialize_83(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*syntax::ast::arm*/
-fn serialize_120<S: std::serialization::serializer>(s: S,
+fn serialize_121<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::arm) {
 
     s.emit_rec(/*[@syntax::ast::pat]*//*core::option::t<@syntax::ast::expr>*/
@@ -2232,28 +2264,28 @@ fn serialize_120<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("pats", 0u,
-                                        {|| serialize_111(s, v.pats) });
+                                        {|| serialize_112(s, v.pats) });
                        s.emit_rec_field("guard", 1u,
-                                        {|| serialize_77(s, v.guard) });
+                                        {|| serialize_78(s, v.guard) });
                        s.emit_rec_field("body", 2u,
-                                        {|| serialize_81(s, v.body) })
+                                        {|| serialize_82(s, v.body) })
                    }
                });
 }
 /*[syntax::ast::arm]*/
-fn serialize_119<S: std::serialization::serializer>(s: S,
+fn serialize_120<S: std::serialization::serializer>(s: S,
                                                     v: [syntax::ast::arm]) {
 
     s.emit_vec(vec::len(v), /*syntax::ast::arm*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_120(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_121(s, e) })
                               })
                });
 }
 /*syntax::ast::alt_mode*/
-fn serialize_121<S: std::serialization::serializer>(s: S,
+fn serialize_122<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::alt_mode) {
     s.emit_enum("syntax::ast::alt_mode",
@@ -2272,19 +2304,19 @@ fn serialize_121<S: std::serialization::serializer>(s: S,
                 });
 }
 /*int*/
-fn serialize_127<S: std::serialization::serializer>(s: S, v: int) {
+fn serialize_128<S: std::serialization::serializer>(s: S, v: int) {
 
     s.emit_int(v);
 }
 /*syntax::ast::capture_item*/
-fn serialize_126<S: std::serialization::serializer>(s: S,
+fn serialize_127<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::capture_item) {
     s.emit_rec(/*int*//*syntax::ast::ident*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("id", 0u,
-                                        {|| serialize_127(s, v.id) });
+                                        {|| serialize_128(s, v.id) });
                        s.emit_rec_field("name", 1u,
                                         {|| serialize_1(s, v.name) });
                        s.emit_rec_field("span", 2u,
@@ -2293,25 +2325,25 @@ fn serialize_126<S: std::serialization::serializer>(s: S,
                });
 }
 /*@syntax::ast::capture_item*/
-fn serialize_125<S: std::serialization::serializer>(s: S,
+fn serialize_126<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         @syntax::ast::capture_item) {
-    s.emit_box(/*syntax::ast::capture_item*/{|| serialize_126(s, *v) });
+    s.emit_box(/*syntax::ast::capture_item*/{|| serialize_127(s, *v) });
 }
 /*[@syntax::ast::capture_item]*/
-fn serialize_124<S: std::serialization::serializer>(s: S,
+fn serialize_125<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [@syntax::ast::capture_item]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::capture_item*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_125(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_126(s, e) })
                               })
                });
 }
 /*syntax::ast::capture_clause*/
-fn serialize_123<S: std::serialization::serializer>(s: S,
+fn serialize_124<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::capture_clause) {
     s.emit_rec(/*[@syntax::ast::capture_item]*/
@@ -2319,20 +2351,20 @@ fn serialize_123<S: std::serialization::serializer>(s: S,
                {||
                    {
                        s.emit_rec_field("copies", 0u,
-                                        {|| serialize_124(s, v.copies) });
+                                        {|| serialize_125(s, v.copies) });
                        s.emit_rec_field("moves", 1u,
-                                        {|| serialize_124(s, v.moves) })
+                                        {|| serialize_125(s, v.moves) })
                    }
                });
 }
 /*@syntax::ast::capture_clause*/
-fn serialize_122<S: std::serialization::serializer>(s: S,
+fn serialize_123<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         @syntax::ast::capture_clause) {
-    s.emit_box(/*syntax::ast::capture_clause*/{|| serialize_123(s, *v) });
+    s.emit_box(/*syntax::ast::capture_clause*/{|| serialize_124(s, *v) });
 }
 /*syntax::ast::expr_check_mode*/
-fn serialize_128<S: std::serialization::serializer>(s: S,
+fn serialize_129<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::expr_check_mode) {
     s.emit_enum("syntax::ast::expr_check_mode",
@@ -2351,7 +2383,7 @@ fn serialize_128<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::expr_*/
-fn serialize_72<S: std::serialization::serializer>(s: S,
+fn serialize_73<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::expr_) {
 
     s.emit_enum("syntax::ast::expr_",
@@ -2408,7 +2440,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_73(s,
+                                                                                serialize_74(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2425,12 +2457,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_74(s,
+                                                                                serialize_75(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_77(s,
+                                                                                serialize_78(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2442,12 +2474,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_73(s,
+                                                                                serialize_74(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
@@ -2464,7 +2496,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_73(s,
+                                                                                serialize_74(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2476,12 +2508,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_78(s,
+                                                                                serialize_79(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2494,17 +2526,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_79(s,
+                                                                                serialize_80(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2516,12 +2548,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_80(s,
+                                                                                serialize_81(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2533,7 +2565,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_58(s,
+                                                                                serialize_59(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2545,7 +2577,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2562,17 +2594,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_77(s,
+                                                                                serialize_78(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2585,12 +2617,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2602,17 +2634,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_104(s,
+                                                                                serialize_105(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2625,12 +2657,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2642,17 +2674,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_119(s,
+                                                                                serialize_120(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_121(s,
+                                                                                serialize_122(s,
                                                                                               v2)
                                                                             })
                                                 }
@@ -2664,22 +2696,22 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_37(s,
+                                                                                serialize_38(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v2)
                                                                             });
                                                     s.emit_enum_variant_arg(3u,
                                                                             {||
-                                                                                serialize_122(s,
+                                                                                serialize_123(s,
                                                                                               v3)
                                                                             })
                                                 }
@@ -2692,12 +2724,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2710,7 +2742,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2722,7 +2754,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2734,12 +2766,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2752,12 +2784,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2769,12 +2801,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2787,17 +2819,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_79(s,
+                                                                                serialize_80(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2810,7 +2842,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -2820,7 +2852,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_53(s,
+                                                                                serialize_54(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2833,12 +2865,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2850,7 +2882,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2862,7 +2894,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_77(s,
+                                                                                serialize_78(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2882,7 +2914,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_77(s,
+                                                                                serialize_78(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2894,7 +2926,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2906,17 +2938,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_127(s,
+                                                                                serialize_128(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2929,7 +2961,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2942,12 +2974,12 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_128(s,
+                                                                                serialize_129(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -2960,17 +2992,17 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_77(s,
+                                                                                serialize_78(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -2982,7 +3014,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_67(s,
+                                                                                serialize_68(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -2992,7 +3024,7 @@ fn serialize_72<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::expr*/
-fn serialize_71<S: std::serialization::serializer>(s: S,
+fn serialize_72<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::expr) {
 
     s.emit_rec(/*syntax::ast::node_id*//*syntax::ast::expr_*/
@@ -3002,20 +3034,20 @@ fn serialize_71<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("id", 0u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("node", 1u,
-                                        {|| serialize_72(s, v.node) });
+                                        {|| serialize_73(s, v.node) });
                        s.emit_rec_field("span", 2u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::expr*/
-fn serialize_70<S: std::serialization::serializer>(s: S,
+fn serialize_71<S: std::serialization::serializer>(s: S,
                                                    v: @syntax::ast::expr) {
 
-    s.emit_box(/*syntax::ast::expr*/{|| serialize_71(s, *v) });
+    s.emit_box(/*syntax::ast::expr*/{|| serialize_72(s, *v) });
 }
 /*syntax::ast::mac_arg<@syntax::ast::expr>*/
-fn serialize_69<S: std::serialization::serializer>(s: S,
+fn serialize_70<S: std::serialization::serializer>(s: S,
                                                    v:
                                                        syntax::ast::mac_arg<@syntax::ast::expr>) {
     s.emit_enum("core::option::t",
@@ -3033,7 +3065,7 @@ fn serialize_69<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -3043,7 +3075,7 @@ fn serialize_69<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::mac_body_*/
-fn serialize_130<S: std::serialization::serializer>(s: S,
+fn serialize_131<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::mac_body_) {
     s.emit_rec(/*syntax::codemap::span*/
@@ -3055,7 +3087,7 @@ fn serialize_130<S: std::serialization::serializer>(s: S,
                });
 }
 /*syntax::ast::mac_body<syntax::ast::mac_body_>*/
-fn serialize_129<S: std::serialization::serializer>(s: S,
+fn serialize_130<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::mac_body<syntax::ast::mac_body_>) {
     s.emit_enum("core::option::t",
@@ -3073,7 +3105,7 @@ fn serialize_129<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_130(s,
+                                                                                serialize_131(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -3083,7 +3115,7 @@ fn serialize_129<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::mac_*/
-fn serialize_68<S: std::serialization::serializer>(s: S,
+fn serialize_69<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::mac_) {
 
     s.emit_enum("syntax::ast::mac_",
@@ -3103,17 +3135,17 @@ fn serialize_68<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_69(s,
+                                                                                serialize_70(s,
                                                                                              v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_129(s,
+                                                                                serialize_130(s,
                                                                                               v2)
                                                                             })
                                                 }
@@ -3139,7 +3171,7 @@ fn serialize_68<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v0)
                                                                             })
                                                 }
@@ -3160,7 +3192,7 @@ fn serialize_68<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -3182,14 +3214,14 @@ fn serialize_68<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::mac*/
-fn serialize_67<S: std::serialization::serializer>(s: S,
+fn serialize_68<S: std::serialization::serializer>(s: S,
                                                    v: syntax::ast::mac) {
 
     s.emit_rec(/*syntax::ast::mac_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_68(s, v.node) });
+                                        {|| serialize_69(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
@@ -3206,6 +3238,7 @@ fn serialize_31<S: std::serialization::serializer>(s: S,
                 /*syntax::ast::mt*/
                 /*syntax::ast::mt*/
                 /*syntax::ast::mt*/
+                /*syntax::ast::region*//*syntax::ast::mt*/
                 /*[syntax::ast::ty_field]*/
                 /*syntax::ast::proto*//*syntax::ast::fn_decl*/
                 /*[@syntax::ast::ty]*/
@@ -3270,54 +3303,71 @@ fn serialize_31<S: std::serialization::serializer>(s: S,
                                                 }
                                             })
                       }
-                      syntax::ast::ty_rec(v0) {
-                        s.emit_enum_variant("syntax::ast::ty_rec", 6u, 1u,
+                      syntax::ast::ty_rptr(v0, v1) {
+                        s.emit_enum_variant("syntax::ast::ty_rptr", 6u, 2u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
                                                                                 serialize_34(s,
                                                                                              v0)
+                                                                            });
+                                                    s.emit_enum_variant_arg(1u,
+                                                                            {||
+                                                                                serialize_32(s,
+                                                                                             v1)
+                                                                            })
+                                                }
+                                            })
+                      }
+                      syntax::ast::ty_rec(v0) {
+                        s.emit_enum_variant("syntax::ast::ty_rec", 7u, 1u,
+                                            {||
+                                                {
+                                                    s.emit_enum_variant_arg(0u,
+                                                                            {||
+                                                                                serialize_35(s,
+                                                                                             v0)
                                                                             })
                                                 }
                                             })
                       }
                       syntax::ast::ty_fn(v0, v1) {
-                        s.emit_enum_variant("syntax::ast::ty_fn", 7u, 2u,
+                        s.emit_enum_variant("syntax::ast::ty_fn", 8u, 2u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_37(s,
+                                                                                serialize_38(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v1)
                                                                             })
                                                 }
                                             })
                       }
                       syntax::ast::ty_tup(v0) {
-                        s.emit_enum_variant("syntax::ast::ty_tup", 8u, 1u,
+                        s.emit_enum_variant("syntax::ast::ty_tup", 9u, 1u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_53(s,
+                                                                                serialize_54(s,
                                                                                              v0)
                                                                             })
                                                 }
                                             })
                       }
                       syntax::ast::ty_path(v0, v1) {
-                        s.emit_enum_variant("syntax::ast::ty_path", 9u, 2u,
+                        s.emit_enum_variant("syntax::ast::ty_path", 10u, 2u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_49(s,
+                                                                                serialize_50(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -3329,7 +3379,7 @@ fn serialize_31<S: std::serialization::serializer>(s: S,
                                             })
                       }
                       syntax::ast::ty_constr(v0, v1) {
-                        s.emit_enum_variant("syntax::ast::ty_constr", 10u, 2u,
+                        s.emit_enum_variant("syntax::ast::ty_constr", 11u, 2u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
@@ -3339,26 +3389,26 @@ fn serialize_31<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_59(s,
+                                                                                serialize_60(s,
                                                                                              v1)
                                                                             })
                                                 }
                                             })
                       }
                       syntax::ast::ty_mac(v0) {
-                        s.emit_enum_variant("syntax::ast::ty_mac", 11u, 1u,
+                        s.emit_enum_variant("syntax::ast::ty_mac", 12u, 1u,
                                             {||
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_67(s,
+                                                                                serialize_68(s,
                                                                                              v0)
                                                                             })
                                                 }
                                             })
                       }
                       syntax::ast::ty_infer {
-                        s.emit_enum_variant("syntax::ast::ty_infer", 12u, 0u,
+                        s.emit_enum_variant("syntax::ast::ty_infer", 13u, 0u,
                                             {|| })
                       }
                     }
@@ -3384,7 +3434,7 @@ fn serialize_29<S: std::serialization::serializer>(s: S,
     s.emit_box(/*syntax::ast::ty*/{|| serialize_30(s, *v) });
 }
 /*syntax::ast::ty_param_bound*/
-fn serialize_135<S: std::serialization::serializer>(s: S,
+fn serialize_136<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::ty_param_bound) {
     s.emit_enum("syntax::ast::ty_param_bound",
@@ -3418,25 +3468,25 @@ fn serialize_135<S: std::serialization::serializer>(s: S,
                 });
 }
 /*[syntax::ast::ty_param_bound]*/
-fn serialize_134<S: std::serialization::serializer>(s: S,
+fn serialize_135<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::ty_param_bound]) {
     s.emit_vec(vec::len(v), /*syntax::ast::ty_param_bound*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_135(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_136(s, e) })
                               })
                });
 }
 /*@[syntax::ast::ty_param_bound]*/
-fn serialize_133<S: std::serialization::serializer>(s: S,
+fn serialize_134<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         @[syntax::ast::ty_param_bound]) {
-    s.emit_box(/*[syntax::ast::ty_param_bound]*/{|| serialize_134(s, *v) });
+    s.emit_box(/*[syntax::ast::ty_param_bound]*/{|| serialize_135(s, *v) });
 }
 /*syntax::ast::ty_param*/
-fn serialize_132<S: std::serialization::serializer>(s: S,
+fn serialize_133<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::ty_param) {
     s.emit_rec(/*syntax::ast::ident*//*syntax::ast::node_id*/
@@ -3448,50 +3498,50 @@ fn serialize_132<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("id", 1u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("bounds", 2u,
-                                        {|| serialize_133(s, v.bounds) })
+                                        {|| serialize_134(s, v.bounds) })
                    }
                });
 }
 /*[syntax::ast::ty_param]*/
-fn serialize_131<S: std::serialization::serializer>(s: S,
+fn serialize_132<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::ty_param]) {
     s.emit_vec(vec::len(v), /*syntax::ast::ty_param*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_132(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_133(s, e) })
                               })
                });
 }
 /*[@syntax::ast::item]*/
-fn serialize_137<S: std::serialization::serializer>(s: S,
+fn serialize_138<S: std::serialization::serializer>(s: S,
                                                     v: [@syntax::ast::item]) {
 
     s.emit_vec(vec::len(v), /*@syntax::ast::item*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_117(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_118(s, e) })
                               })
                });
 }
 /*syntax::ast::_mod*/
-fn serialize_136<S: std::serialization::serializer>(s: S,
+fn serialize_137<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::_mod) {
 
     s.emit_rec(/*[@syntax::ast::view_item]*//*[@syntax::ast::item]*/
                {||
                    {
                        s.emit_rec_field("view_items", 0u,
-                                        {|| serialize_83(s, v.view_items) });
+                                        {|| serialize_84(s, v.view_items) });
                        s.emit_rec_field("items", 1u,
-                                        {|| serialize_137(s, v.items) })
+                                        {|| serialize_138(s, v.items) })
                    }
                });
 }
 /*syntax::ast::native_item_*/
-fn serialize_142<S: std::serialization::serializer>(s: S,
+fn serialize_143<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::native_item_) {
     s.emit_enum("syntax::ast::native_item_",
@@ -3505,12 +3555,12 @@ fn serialize_142<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -3520,7 +3570,7 @@ fn serialize_142<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::native_item*/
-fn serialize_141<S: std::serialization::serializer>(s: S,
+fn serialize_142<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::native_item) {
     s.emit_rec(/*syntax::ast::ident*//*[syntax::ast::attribute]*/
@@ -3533,7 +3583,7 @@ fn serialize_141<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("attrs", 1u,
                                         {|| serialize_2(s, v.attrs) });
                        s.emit_rec_field("node", 2u,
-                                        {|| serialize_142(s, v.node) });
+                                        {|| serialize_143(s, v.node) });
                        s.emit_rec_field("id", 3u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("span", 4u,
@@ -3542,39 +3592,39 @@ fn serialize_141<S: std::serialization::serializer>(s: S,
                });
 }
 /*@syntax::ast::native_item*/
-fn serialize_140<S: std::serialization::serializer>(s: S,
+fn serialize_141<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         @syntax::ast::native_item) {
-    s.emit_box(/*syntax::ast::native_item*/{|| serialize_141(s, *v) });
+    s.emit_box(/*syntax::ast::native_item*/{|| serialize_142(s, *v) });
 }
 /*[@syntax::ast::native_item]*/
-fn serialize_139<S: std::serialization::serializer>(s: S,
+fn serialize_140<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [@syntax::ast::native_item]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::native_item*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_140(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_141(s, e) })
                               })
                });
 }
 /*syntax::ast::native_mod*/
-fn serialize_138<S: std::serialization::serializer>(s: S,
+fn serialize_139<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::native_mod) {
     s.emit_rec(/*[@syntax::ast::view_item]*//*[@syntax::ast::native_item]*/
                {||
                    {
                        s.emit_rec_field("view_items", 0u,
-                                        {|| serialize_83(s, v.view_items) });
+                                        {|| serialize_84(s, v.view_items) });
                        s.emit_rec_field("items", 1u,
-                                        {|| serialize_139(s, v.items) })
+                                        {|| serialize_140(s, v.items) })
                    }
                });
 }
 /*syntax::ast::variant_arg*/
-fn serialize_147<S: std::serialization::serializer>(s: S,
+fn serialize_148<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::variant_arg) {
     s.emit_rec(/*@syntax::ast::ty*//*syntax::ast::node_id*/
@@ -3587,19 +3637,19 @@ fn serialize_147<S: std::serialization::serializer>(s: S,
                });
 }
 /*[syntax::ast::variant_arg]*/
-fn serialize_146<S: std::serialization::serializer>(s: S,
+fn serialize_147<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::variant_arg]) {
     s.emit_vec(vec::len(v), /*syntax::ast::variant_arg*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_147(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_148(s, e) })
                               })
                });
 }
 /*syntax::ast::variant_*/
-fn serialize_145<S: std::serialization::serializer>(s: S,
+fn serialize_146<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::variant_) {
     s.emit_rec(/*syntax::ast::ident*//*[syntax::ast::attribute]*/
@@ -3612,42 +3662,42 @@ fn serialize_145<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("attrs", 1u,
                                         {|| serialize_2(s, v.attrs) });
                        s.emit_rec_field("args", 2u,
-                                        {|| serialize_146(s, v.args) });
+                                        {|| serialize_147(s, v.args) });
                        s.emit_rec_field("id", 3u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("disr_expr", 4u,
-                                        {|| serialize_77(s, v.disr_expr) })
+                                        {|| serialize_78(s, v.disr_expr) })
                    }
                });
 }
 /*syntax::ast::variant*/
-fn serialize_144<S: std::serialization::serializer>(s: S,
+fn serialize_145<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::variant) {
 
     s.emit_rec(/*syntax::ast::variant_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_145(s, v.node) });
+                                        {|| serialize_146(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*[syntax::ast::variant]*/
-fn serialize_143<S: std::serialization::serializer>(s: S,
+fn serialize_144<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::variant]) {
     s.emit_vec(vec::len(v), /*syntax::ast::variant*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_144(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_145(s, e) })
                               })
                });
 }
 /*syntax::ast::privacy*/
-fn serialize_152<S: std::serialization::serializer>(s: S,
+fn serialize_153<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::privacy) {
 
     s.emit_enum("syntax::ast::privacy",
@@ -3665,7 +3715,7 @@ fn serialize_152<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::class_mutability*/
-fn serialize_154<S: std::serialization::serializer>(s: S,
+fn serialize_155<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_mutability) {
     s.emit_enum("syntax::ast::class_mutability",
@@ -3684,7 +3734,7 @@ fn serialize_154<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::class_member*/
-fn serialize_153<S: std::serialization::serializer>(s: S,
+fn serialize_154<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_member) {
     s.emit_enum("syntax::ast::class_member",
@@ -3710,7 +3760,7 @@ fn serialize_153<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_154(s,
+                                                                                serialize_155(s,
                                                                                               v2)
                                                                             });
                                                     s.emit_enum_variant_arg(3u,
@@ -3728,7 +3778,7 @@ fn serialize_153<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_117(s,
+                                                                                serialize_118(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -3738,53 +3788,53 @@ fn serialize_153<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::class_item_*/
-fn serialize_151<S: std::serialization::serializer>(s: S,
+fn serialize_152<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_item_) {
     s.emit_rec(/*syntax::ast::privacy*//*syntax::ast::class_member*/
                {||
                    {
                        s.emit_rec_field("privacy", 0u,
-                                        {|| serialize_152(s, v.privacy) });
+                                        {|| serialize_153(s, v.privacy) });
                        s.emit_rec_field("decl", 1u,
-                                        {|| serialize_153(s, v.decl) })
+                                        {|| serialize_154(s, v.decl) })
                    }
                });
 }
 /*syntax::ast::class_item*/
-fn serialize_150<S: std::serialization::serializer>(s: S,
+fn serialize_151<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_item) {
     s.emit_rec(/*syntax::ast::class_item_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_151(s, v.node) });
+                                        {|| serialize_152(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*@syntax::ast::class_item*/
-fn serialize_149<S: std::serialization::serializer>(s: S,
+fn serialize_150<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         @syntax::ast::class_item) {
-    s.emit_box(/*syntax::ast::class_item*/{|| serialize_150(s, *v) });
+    s.emit_box(/*syntax::ast::class_item*/{|| serialize_151(s, *v) });
 }
 /*[@syntax::ast::class_item]*/
-fn serialize_148<S: std::serialization::serializer>(s: S,
+fn serialize_149<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [@syntax::ast::class_item]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::class_item*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_149(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_150(s, e) })
                               })
                });
 }
 /*syntax::ast::class_ctor_*/
-fn serialize_156<S: std::serialization::serializer>(s: S,
+fn serialize_157<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_ctor_) {
     s.emit_rec(/*syntax::ast::node_id*//*syntax::ast::fn_decl*/
@@ -3794,28 +3844,28 @@ fn serialize_156<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("id", 0u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("dec", 1u,
-                                        {|| serialize_38(s, v.dec) });
+                                        {|| serialize_39(s, v.dec) });
                        s.emit_rec_field("body", 2u,
-                                        {|| serialize_81(s, v.body) })
+                                        {|| serialize_82(s, v.body) })
                    }
                });
 }
 /*syntax::ast::class_ctor*/
-fn serialize_155<S: std::serialization::serializer>(s: S,
+fn serialize_156<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::class_ctor) {
     s.emit_rec(/*syntax::ast::class_ctor_*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("node", 0u,
-                                        {|| serialize_156(s, v.node) });
+                                        {|| serialize_157(s, v.node) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*syntax::ast::ty_method*/
-fn serialize_158<S: std::serialization::serializer>(s: S,
+fn serialize_159<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::ty_method) {
     s.emit_rec(/*syntax::ast::ident*//*[syntax::ast::attribute]*/
@@ -3828,28 +3878,28 @@ fn serialize_158<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("attrs", 1u,
                                         {|| serialize_2(s, v.attrs) });
                        s.emit_rec_field("decl", 2u,
-                                        {|| serialize_38(s, v.decl) });
+                                        {|| serialize_39(s, v.decl) });
                        s.emit_rec_field("tps", 3u,
-                                        {|| serialize_131(s, v.tps) });
+                                        {|| serialize_132(s, v.tps) });
                        s.emit_rec_field("span", 4u,
                                         {|| serialize_19(s, v.span) })
                    }
                });
 }
 /*[syntax::ast::ty_method]*/
-fn serialize_157<S: std::serialization::serializer>(s: S,
+fn serialize_158<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [syntax::ast::ty_method]) {
     s.emit_vec(vec::len(v), /*syntax::ast::ty_method*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_158(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_159(s, e) })
                               })
                });
 }
 /*core::option::t<@syntax::ast::ty>*/
-fn serialize_159<S: std::serialization::serializer>(s: S,
+fn serialize_160<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         core::option::t<@syntax::ast::ty>) {
     s.emit_enum("core::option::t",
@@ -3877,7 +3927,7 @@ fn serialize_159<S: std::serialization::serializer>(s: S,
                 });
 }
 /*syntax::ast::method*/
-fn serialize_162<S: std::serialization::serializer>(s: S,
+fn serialize_163<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::method) {
 
     s.emit_rec(/*syntax::ast::ident*//*[syntax::ast::attribute]*/
@@ -3891,11 +3941,11 @@ fn serialize_162<S: std::serialization::serializer>(s: S,
                        s.emit_rec_field("attrs", 1u,
                                         {|| serialize_2(s, v.attrs) });
                        s.emit_rec_field("tps", 2u,
-                                        {|| serialize_131(s, v.tps) });
+                                        {|| serialize_132(s, v.tps) });
                        s.emit_rec_field("decl", 3u,
-                                        {|| serialize_38(s, v.decl) });
+                                        {|| serialize_39(s, v.decl) });
                        s.emit_rec_field("body", 4u,
-                                        {|| serialize_81(s, v.body) });
+                                        {|| serialize_82(s, v.body) });
                        s.emit_rec_field("id", 5u,
                                         {|| serialize_27(s, v.id) });
                        s.emit_rec_field("span", 6u,
@@ -3904,20 +3954,20 @@ fn serialize_162<S: std::serialization::serializer>(s: S,
                });
 }
 /*@syntax::ast::method*/
-fn serialize_161<S: std::serialization::serializer>(s: S,
+fn serialize_162<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::method) {
 
-    s.emit_box(/*syntax::ast::method*/{|| serialize_162(s, *v) });
+    s.emit_box(/*syntax::ast::method*/{|| serialize_163(s, *v) });
 }
 /*[@syntax::ast::method]*/
-fn serialize_160<S: std::serialization::serializer>(s: S,
+fn serialize_161<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         [@syntax::ast::method]) {
     s.emit_vec(vec::len(v), /*@syntax::ast::method*/
                {||
                    vec::iteri(v,
                               {|i, e|
-                                  s.emit_vec_elt(i, {|| serialize_161(s, e) })
+                                  s.emit_vec_elt(i, {|| serialize_162(s, e) })
                               })
                });
 }
@@ -3955,7 +4005,7 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_70(s,
+                                                                                serialize_71(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -3967,17 +4017,17 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v2)
                                                                             })
                                                 }
@@ -3989,7 +4039,7 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_136(s,
+                                                                                serialize_137(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -4002,7 +4052,7 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_138(s,
+                                                                                serialize_139(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -4019,7 +4069,7 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -4031,12 +4081,12 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_143(s,
+                                                                                serialize_144(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -4048,17 +4098,17 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_38(s,
+                                                                                serialize_39(s,
                                                                                              v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_81(s,
+                                                                                serialize_82(s,
                                                                                              v2)
                                                                             });
                                                     s.emit_enum_variant_arg(3u,
@@ -4080,17 +4130,17 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_148(s,
+                                                                                serialize_149(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
                                                                             {||
-                                                                                serialize_155(s,
+                                                                                serialize_156(s,
                                                                                               v2)
                                                                             })
                                                 }
@@ -4102,12 +4152,12 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_157(s,
+                                                                                serialize_158(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -4119,12 +4169,12 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_131(s,
+                                                                                serialize_132(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_159(s,
+                                                                                serialize_160(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
@@ -4134,7 +4184,7 @@ fn serialize_28<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(3u,
                                                                             {||
-                                                                                serialize_160(s,
+                                                                                serialize_161(s,
                                                                                               v3)
                                                                             })
                                                 }
@@ -4679,8 +4729,32 @@ fn deserialize_32<S: std::serialization::deserializer>(s: S) ->
                })
 
 }
+/*syntax::ast::region*/
+fn deserialize_34<S: std::serialization::deserializer>(s: S) ->
+   syntax::ast::region {
+    s.read_enum("syntax::ast::region",
+
+
+                /*syntax::ast::ident*/
+
+
+                {||
+                    s.read_enum_variant({|v_id|
+                                            alt check v_id {
+                                              0u { syntax::ast::re_inferred }
+                                              1u {
+                                                syntax::ast::re_named(s.read_enum_variant_arg(0u,
+                                                                                              {||
+                                                                                                  deserialize_1(s)
+                                                                                              }))
+                                              }
+                                              2u { syntax::ast::re_self }
+                                            }
+                                        })
+                })
+}
 /*syntax::ast::ty_field_*/
-fn deserialize_36<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_37<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_field_ {
 
     s.read_rec(
@@ -4697,7 +4771,7 @@ fn deserialize_36<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*syntax::ast::ty_field*/
-fn deserialize_35<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_36<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_field {
 
     s.read_rec(
@@ -4709,7 +4783,7 @@ fn deserialize_35<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_36(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_37(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -4717,7 +4791,7 @@ fn deserialize_35<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*[syntax::ast::ty_field]*/
-fn deserialize_34<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_35<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::ty_field] {
     s.read_vec(
 
@@ -4725,12 +4799,12 @@ fn deserialize_34<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_35(s) })
+                                    s.read_vec_elt(i, {|| deserialize_36(s) })
                                 })
                })
 }
 /*syntax::ast::proto*/
-fn deserialize_37<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_38<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::proto {
     s.read_enum("syntax::ast::proto",
 
@@ -4755,7 +4829,7 @@ fn deserialize_37<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::rmode*/
-fn deserialize_42<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_43<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::rmode {
     s.read_enum("syntax::ast::rmode",
 
@@ -4780,7 +4854,7 @@ fn deserialize_42<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::mode<syntax::ast::rmode>*/
-fn deserialize_41<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_42<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mode<syntax::ast::rmode> {
     s.read_enum("syntax::ast::inferable",
                 /*syntax::ast::rmode*/
@@ -4792,7 +4866,7 @@ fn deserialize_41<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::expl(s.read_enum_variant_arg(0u,
                                                                                           {||
-                                                                                              deserialize_42(s)
+                                                                                              deserialize_43(s)
                                                                                           }))
                                               }
                                               1u {
@@ -4806,7 +4880,7 @@ fn deserialize_41<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::arg*/
-fn deserialize_40<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_41<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::arg {
 
     s.read_rec(
@@ -4822,7 +4896,7 @@ fn deserialize_40<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {mode:
-                        s.read_rec_field("mode", 0u, {|| deserialize_41(s) }),
+                        s.read_rec_field("mode", 0u, {|| deserialize_42(s) }),
                     ty: s.read_rec_field("ty", 1u, {|| deserialize_29(s) }),
                     ident:
                         s.read_rec_field("ident", 2u, {|| deserialize_1(s) }),
@@ -4830,7 +4904,7 @@ fn deserialize_40<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*[syntax::ast::arg]*/
-fn deserialize_39<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_40<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::arg] {
     s.read_vec(
 
@@ -4838,12 +4912,12 @@ fn deserialize_39<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_40(s) })
+                                    s.read_vec_elt(i, {|| deserialize_41(s) })
                                 })
                })
 }
 /*syntax::ast::purity*/
-fn deserialize_43<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_44<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::purity {
     s.read_enum("syntax::ast::purity",
 
@@ -4865,7 +4939,7 @@ fn deserialize_43<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::ret_style*/
-fn deserialize_44<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_45<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ret_style {
     s.read_enum("syntax::ast::ret_style",
 
@@ -4881,7 +4955,7 @@ fn deserialize_44<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*[syntax::ast::ident]*/
-fn deserialize_52<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_53<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::ident] {
     s.read_vec(
 
@@ -4894,7 +4968,7 @@ fn deserialize_52<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*[@syntax::ast::ty]*/
-fn deserialize_53<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_54<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::ty] {
     s.read_vec(
 
@@ -4907,7 +4981,7 @@ fn deserialize_53<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*syntax::ast::path_*/
-fn deserialize_51<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_52<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::path_ {
 
     s.read_rec(
@@ -4925,15 +4999,15 @@ fn deserialize_51<S: std::serialization::deserializer>(s: S) ->
                                          {|| deserialize_18(s) }),
                     idents:
                         s.read_rec_field("idents", 1u,
-                                         {|| deserialize_52(s) }),
+                                         {|| deserialize_53(s) }),
                     types:
                         s.read_rec_field("types", 2u,
-                                         {|| deserialize_53(s) }),}
+                                         {|| deserialize_54(s) }),}
                })
 
 }
 /*syntax::ast::path*/
-fn deserialize_50<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_51<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::path {
 
     s.read_rec(
@@ -4945,7 +5019,7 @@ fn deserialize_50<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_51(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_52(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -4953,21 +5027,21 @@ fn deserialize_50<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::path*/
-fn deserialize_49<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_50<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::path {
 
-    s.read_box(/*syntax::ast::path*/{|| @deserialize_50(s) })
+    s.read_box(/*syntax::ast::path*/{|| @deserialize_51(s) })
 
 }
 /*@syntax::ast::lit*/
-fn deserialize_58<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_59<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::lit {
 
     s.read_box(/*syntax::ast::lit*/{|| @deserialize_10(s) })
 
 }
 /*syntax::ast::constr_arg_general_<uint>*/
-fn deserialize_57<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_58<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::constr_arg_general_<uint> {
     s.read_enum("syntax::ast::constr_arg_general_",
 
@@ -4988,7 +5062,7 @@ fn deserialize_57<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 syntax::ast::carg_lit(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_58(s)
+                                                                                                  deserialize_59(s)
                                                                                               }))
                                               }
                                             }
@@ -4996,7 +5070,7 @@ fn deserialize_57<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-fn deserialize_56<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_57<S: std::serialization::deserializer>(s: S) ->
    {node: syntax::ast::constr_arg_general_<uint>,
     span: syntax::codemap::span,} {
 
@@ -5009,7 +5083,7 @@ fn deserialize_56<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_57(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_58(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5017,17 +5091,17 @@ fn deserialize_56<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-fn deserialize_55<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_56<S: std::serialization::deserializer>(s: S) ->
    @{node: syntax::ast::constr_arg_general_<uint>,
      span: syntax::codemap::span,} {
 
     s.read_box(
                /*{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}*/
-               {|| @deserialize_56(s) })
+               {|| @deserialize_57(s) })
 
 }
 /*[@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}]*/
-fn deserialize_54<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_55<S: std::serialization::deserializer>(s: S) ->
    [@{node: syntax::ast::constr_arg_general_<uint>,
       span: syntax::codemap::span,}] {
     s.read_vec(
@@ -5038,12 +5112,12 @@ fn deserialize_54<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_55(s) })
+                                    s.read_vec_elt(i, {|| deserialize_56(s) })
                                 })
                })
 }
 /*{path: @syntax::ast::path,args: [@{node: syntax::ast::constr_arg_general_<uint>,span: syntax::codemap::span}],id: syntax::ast::node_id}*/
-fn deserialize_48<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_49<S: std::serialization::deserializer>(s: S) ->
    {path: @syntax::ast::path,
     args:
         [@{node: syntax::ast::constr_arg_general_<uint>,
@@ -5063,14 +5137,14 @@ fn deserialize_48<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {path:
-                        s.read_rec_field("path", 0u, {|| deserialize_49(s) }),
+                        s.read_rec_field("path", 0u, {|| deserialize_50(s) }),
                     args:
-                        s.read_rec_field("args", 1u, {|| deserialize_54(s) }),
+                        s.read_rec_field("args", 1u, {|| deserialize_55(s) }),
                     id: s.read_rec_field("id", 2u, {|| deserialize_27(s) }),}
                })
 }
 /*syntax::ast::constr*/
-fn deserialize_47<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_48<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::constr {
 
     s.read_rec(
@@ -5084,7 +5158,7 @@ fn deserialize_47<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_48(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_49(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5092,14 +5166,14 @@ fn deserialize_47<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::constr*/
-fn deserialize_46<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_47<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::constr {
 
-    s.read_box(/*syntax::ast::constr*/{|| @deserialize_47(s) })
+    s.read_box(/*syntax::ast::constr*/{|| @deserialize_48(s) })
 
 }
 /*[@syntax::ast::constr]*/
-fn deserialize_45<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_46<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::constr] {
     s.read_vec(
 
@@ -5107,12 +5181,12 @@ fn deserialize_45<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_46(s) })
+                                    s.read_vec_elt(i, {|| deserialize_47(s) })
                                 })
                })
 }
 /*syntax::ast::fn_decl*/
-fn deserialize_38<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_39<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::fn_decl {
 
     s.read_rec(
@@ -5131,22 +5205,22 @@ fn deserialize_38<S: std::serialization::deserializer>(s: S) ->
                {||
                    {inputs:
                         s.read_rec_field("inputs", 0u,
-                                         {|| deserialize_39(s) }),
+                                         {|| deserialize_40(s) }),
                     output:
                         s.read_rec_field("output", 1u,
                                          {|| deserialize_29(s) }),
                     purity:
                         s.read_rec_field("purity", 2u,
-                                         {|| deserialize_43(s) }),
-                    cf: s.read_rec_field("cf", 3u, {|| deserialize_44(s) }),
+                                         {|| deserialize_44(s) }),
+                    cf: s.read_rec_field("cf", 3u, {|| deserialize_45(s) }),
                     constraints:
                         s.read_rec_field("constraints", 4u,
-                                         {|| deserialize_45(s) }),}
+                                         {|| deserialize_46(s) }),}
                })
 
 }
 /*syntax::ast::constr_arg_general_<@syntax::ast::path>*/
-fn deserialize_66<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_67<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::constr_arg_general_<@syntax::ast::path> {
     s.read_enum("syntax::ast::constr_arg_general_",
 
@@ -5161,13 +5235,13 @@ fn deserialize_66<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::carg_ident(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_49(s)
+                                                                                                    deserialize_50(s)
                                                                                                 }))
                                               }
                                               2u {
                                                 syntax::ast::carg_lit(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_58(s)
+                                                                                                  deserialize_59(s)
                                                                                               }))
                                               }
                                             }
@@ -5175,7 +5249,7 @@ fn deserialize_66<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-fn deserialize_65<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_66<S: std::serialization::deserializer>(s: S) ->
    {node: syntax::ast::constr_arg_general_<@syntax::ast::path>,
     span: syntax::codemap::span,} {
 
@@ -5188,7 +5262,7 @@ fn deserialize_65<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_66(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_67(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5196,17 +5270,17 @@ fn deserialize_65<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-fn deserialize_64<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_65<S: std::serialization::deserializer>(s: S) ->
    @{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,
      span: syntax::codemap::span,} {
 
     s.read_box(
                /*{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}*/
-               {|| @deserialize_65(s) })
+               {|| @deserialize_66(s) })
 
 }
 /*[@{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,span: syntax::codemap::span}]*/
-fn deserialize_63<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_64<S: std::serialization::deserializer>(s: S) ->
    [@{node: syntax::ast::constr_arg_general_<@syntax::ast::path>,
       span: syntax::codemap::span,}] {
     s.read_vec(
@@ -5217,12 +5291,12 @@ fn deserialize_63<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_64(s) })
+                                    s.read_vec_elt(i, {|| deserialize_65(s) })
                                 })
                })
 }
 /*syntax::ast::ty_constr_*/
-fn deserialize_62<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_63<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_constr_ {
 
     s.read_rec(
@@ -5238,14 +5312,14 @@ fn deserialize_62<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {path:
-                        s.read_rec_field("path", 0u, {|| deserialize_49(s) }),
+                        s.read_rec_field("path", 0u, {|| deserialize_50(s) }),
                     args:
-                        s.read_rec_field("args", 1u, {|| deserialize_63(s) }),
+                        s.read_rec_field("args", 1u, {|| deserialize_64(s) }),
                     id: s.read_rec_field("id", 2u, {|| deserialize_27(s) }),}
                })
 }
 /*syntax::ast::ty_constr*/
-fn deserialize_61<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_62<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_constr {
 
     s.read_rec(
@@ -5257,7 +5331,7 @@ fn deserialize_61<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_62(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_63(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5265,14 +5339,14 @@ fn deserialize_61<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::ty_constr*/
-fn deserialize_60<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_61<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::ty_constr {
 
-    s.read_box(/*syntax::ast::ty_constr*/{|| @deserialize_61(s) })
+    s.read_box(/*syntax::ast::ty_constr*/{|| @deserialize_62(s) })
 
 }
 /*[@syntax::ast::ty_constr]*/
-fn deserialize_59<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_60<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::ty_constr] {
     s.read_vec(
 
@@ -5280,12 +5354,12 @@ fn deserialize_59<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_60(s) })
+                                    s.read_vec_elt(i, {|| deserialize_61(s) })
                                 })
                })
 }
 /*[@syntax::ast::expr]*/
-fn deserialize_73<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_74<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::expr] {
     s.read_vec(
 
@@ -5293,12 +5367,12 @@ fn deserialize_73<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_70(s) })
+                                    s.read_vec_elt(i, {|| deserialize_71(s) })
                                 })
                })
 }
 /*syntax::ast::field_*/
-fn deserialize_76<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_77<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::field_ {
 
     s.read_rec(
@@ -5318,12 +5392,12 @@ fn deserialize_76<S: std::serialization::deserializer>(s: S) ->
                         s.read_rec_field("ident", 1u, {|| deserialize_1(s) }),
                     expr:
                         s.read_rec_field("expr", 2u,
-                                         {|| deserialize_70(s) }),}
+                                         {|| deserialize_71(s) }),}
                })
 
 }
 /*syntax::ast::field*/
-fn deserialize_75<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_76<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::field {
 
     s.read_rec(
@@ -5335,7 +5409,7 @@ fn deserialize_75<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_76(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_77(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5343,7 +5417,7 @@ fn deserialize_75<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*[syntax::ast::field]*/
-fn deserialize_74<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_75<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::field] {
     s.read_vec(
 
@@ -5351,12 +5425,12 @@ fn deserialize_74<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_75(s) })
+                                    s.read_vec_elt(i, {|| deserialize_76(s) })
                                 })
                })
 }
 /*core::option::t<@syntax::ast::expr>*/
-fn deserialize_77<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_78<S: std::serialization::deserializer>(s: S) ->
    core::option::t<@syntax::ast::expr> {
     s.read_enum("core::option::t",
 
@@ -5369,7 +5443,7 @@ fn deserialize_77<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 core::option::some(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_70(s)
+                                                                                               deserialize_71(s)
                                                                                            }))
                                               }
                                             }
@@ -5377,7 +5451,7 @@ fn deserialize_77<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*[core::option::t<@syntax::ast::expr>]*/
-fn deserialize_78<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_79<S: std::serialization::deserializer>(s: S) ->
    [core::option::t<@syntax::ast::expr>] {
     s.read_vec(
 
@@ -5385,12 +5459,12 @@ fn deserialize_78<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_77(s) })
+                                    s.read_vec_elt(i, {|| deserialize_78(s) })
                                 })
                })
 }
 /*syntax::ast::binop*/
-fn deserialize_79<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_80<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::binop {
     s.read_enum("syntax::ast::binop",
 
@@ -5457,7 +5531,7 @@ fn deserialize_79<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::unop*/
-fn deserialize_80<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_81<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::unop {
     s.read_enum("syntax::ast::unop",
                 /*syntax::ast::mutability*/
@@ -5492,7 +5566,7 @@ fn deserialize_80<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::simple_path*/
-fn deserialize_92<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_93<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::simple_path {
     s.read_vec(
 
@@ -5505,14 +5579,14 @@ fn deserialize_92<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*@syntax::ast::simple_path*/
-fn deserialize_91<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_92<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::simple_path {
 
-    s.read_box(/*syntax::ast::simple_path*/{|| @deserialize_92(s) })
+    s.read_box(/*syntax::ast::simple_path*/{|| @deserialize_93(s) })
 
 }
 /*syntax::ast::path_list_ident_*/
-fn deserialize_95<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_96<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::path_list_ident_ {
 
     s.read_rec(
@@ -5529,7 +5603,7 @@ fn deserialize_95<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*syntax::ast::path_list_ident*/
-fn deserialize_94<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_95<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::path_list_ident {
 
     s.read_rec(
@@ -5541,7 +5615,7 @@ fn deserialize_94<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_95(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_96(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5549,7 +5623,7 @@ fn deserialize_94<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*[syntax::ast::path_list_ident]*/
-fn deserialize_93<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_94<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::path_list_ident] {
     s.read_vec(
 
@@ -5557,12 +5631,12 @@ fn deserialize_93<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_94(s) })
+                                    s.read_vec_elt(i, {|| deserialize_95(s) })
                                 })
                })
 }
 /*syntax::ast::view_path_*/
-fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_91<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::view_path_ {
     s.read_enum("syntax::ast::view_path_",
                 /*syntax::ast::ident*//*@syntax::ast::simple_path*/
@@ -5582,7 +5656,7 @@ fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
                                                                                                       }),
                                                                               s.read_enum_variant_arg(1u,
                                                                                                       {||
-                                                                                                          deserialize_91(s)
+                                                                                                          deserialize_92(s)
                                                                                                       }),
                                                                               s.read_enum_variant_arg(2u,
                                                                                                       {||
@@ -5592,7 +5666,7 @@ fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::view_path_glob(s.read_enum_variant_arg(0u,
                                                                                                     {||
-                                                                                                        deserialize_91(s)
+                                                                                                        deserialize_92(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(1u,
                                                                                                     {||
@@ -5602,11 +5676,11 @@ fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 syntax::ast::view_path_list(s.read_enum_variant_arg(0u,
                                                                                                     {||
-                                                                                                        deserialize_91(s)
+                                                                                                        deserialize_92(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(1u,
                                                                                                     {||
-                                                                                                        deserialize_93(s)
+                                                                                                        deserialize_94(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(2u,
                                                                                                     {||
@@ -5618,7 +5692,7 @@ fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::view_path*/
-fn deserialize_89<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_90<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::view_path {
 
     s.read_rec(
@@ -5630,7 +5704,7 @@ fn deserialize_89<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_90(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_91(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5638,14 +5712,14 @@ fn deserialize_89<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::view_path*/
-fn deserialize_88<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_89<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::view_path {
 
-    s.read_box(/*syntax::ast::view_path*/{|| @deserialize_89(s) })
+    s.read_box(/*syntax::ast::view_path*/{|| @deserialize_90(s) })
 
 }
 /*[@syntax::ast::view_path]*/
-fn deserialize_87<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_88<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::view_path] {
     s.read_vec(
 
@@ -5653,12 +5727,12 @@ fn deserialize_87<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_88(s) })
+                                    s.read_vec_elt(i, {|| deserialize_89(s) })
                                 })
                })
 }
 /*syntax::ast::view_item_*/
-fn deserialize_86<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_87<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::view_item_ {
     s.read_enum("syntax::ast::view_item_",
                 /*syntax::ast::ident*//*[@syntax::ast::meta_item]*/
@@ -5687,13 +5761,13 @@ fn deserialize_86<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::view_item_import(s.read_enum_variant_arg(0u,
                                                                                                       {||
-                                                                                                          deserialize_87(s)
+                                                                                                          deserialize_88(s)
                                                                                                       }))
                                               }
                                               2u {
                                                 syntax::ast::view_item_export(s.read_enum_variant_arg(0u,
                                                                                                       {||
-                                                                                                          deserialize_87(s)
+                                                                                                          deserialize_88(s)
                                                                                                       }))
                                               }
                                             }
@@ -5701,7 +5775,7 @@ fn deserialize_86<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::view_item*/
-fn deserialize_85<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_86<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::view_item {
 
     s.read_rec(
@@ -5713,7 +5787,7 @@ fn deserialize_85<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_86(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_87(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -5721,14 +5795,14 @@ fn deserialize_85<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::view_item*/
-fn deserialize_84<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_85<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::view_item {
 
-    s.read_box(/*syntax::ast::view_item*/{|| @deserialize_85(s) })
+    s.read_box(/*syntax::ast::view_item*/{|| @deserialize_86(s) })
 
 }
 /*[@syntax::ast::view_item]*/
-fn deserialize_83<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_84<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::view_item] {
     s.read_vec(
 
@@ -5736,12 +5810,12 @@ fn deserialize_83<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_84(s) })
+                                    s.read_vec_elt(i, {|| deserialize_85(s) })
                                 })
                })
 }
 /*core::option::t<@syntax::ast::pat>*/
-fn deserialize_110<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_111<S: std::serialization::deserializer>(s: S) ->
    core::option::t<@syntax::ast::pat> {
     s.read_enum("core::option::t",
 
@@ -5754,7 +5828,7 @@ fn deserialize_110<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 core::option::some(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_107(s)
+                                                                                               deserialize_108(s)
                                                                                            }))
                                               }
                                             }
@@ -5762,7 +5836,7 @@ fn deserialize_110<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*[@syntax::ast::pat]*/
-fn deserialize_111<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_112<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::pat] {
     s.read_vec(
 
@@ -5771,12 +5845,12 @@ fn deserialize_111<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_107(s) })
+                                                   {|| deserialize_108(s) })
                                 })
                })
 }
 /*syntax::ast::field_pat*/
-fn deserialize_113<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_114<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::field_pat {
 
     s.read_rec(
@@ -5791,12 +5865,12 @@ fn deserialize_113<S: std::serialization::deserializer>(s: S) ->
                         s.read_rec_field("ident", 0u, {|| deserialize_1(s) }),
                     pat:
                         s.read_rec_field("pat", 1u,
-                                         {|| deserialize_107(s) }),}
+                                         {|| deserialize_108(s) }),}
                })
 
 }
 /*[syntax::ast::field_pat]*/
-fn deserialize_112<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_113<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::field_pat] {
     s.read_vec(
 
@@ -5805,12 +5879,12 @@ fn deserialize_112<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_113(s) })
+                                                   {|| deserialize_114(s) })
                                 })
                })
 }
 /*syntax::ast::pat_*/
-fn deserialize_109<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_110<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::pat_ {
     s.read_enum("syntax::ast::pat_",
 
@@ -5837,27 +5911,27 @@ fn deserialize_109<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::pat_ident(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_49(s)
+                                                                                                   deserialize_50(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_110(s)
+                                                                                                   deserialize_111(s)
                                                                                                }))
                                               }
                                               2u {
                                                 syntax::ast::pat_enum(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_49(s)
+                                                                                                  deserialize_50(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_111(s)
+                                                                                                  deserialize_112(s)
                                                                                               }))
                                               }
                                               3u {
                                                 syntax::ast::pat_rec(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_112(s)
+                                                                                                 deserialize_113(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
@@ -5867,35 +5941,35 @@ fn deserialize_109<S: std::serialization::deserializer>(s: S) ->
                                               4u {
                                                 syntax::ast::pat_tup(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_111(s)
+                                                                                                 deserialize_112(s)
                                                                                              }))
                                               }
                                               5u {
                                                 syntax::ast::pat_box(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_107(s)
+                                                                                                 deserialize_108(s)
                                                                                              }))
                                               }
                                               6u {
                                                 syntax::ast::pat_uniq(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_107(s)
+                                                                                                  deserialize_108(s)
                                                                                               }))
                                               }
                                               7u {
                                                 syntax::ast::pat_lit(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_70(s)
+                                                                                                 deserialize_71(s)
                                                                                              }))
                                               }
                                               8u {
                                                 syntax::ast::pat_range(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }))
                                               }
                                             }
@@ -5903,7 +5977,7 @@ fn deserialize_109<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::pat*/
-fn deserialize_108<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_109<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::pat {
 
     s.read_rec(
@@ -5919,7 +5993,7 @@ fn deserialize_108<S: std::serialization::deserializer>(s: S) ->
                    {id: s.read_rec_field("id", 0u, {|| deserialize_27(s) }),
                     node:
                         s.read_rec_field("node", 1u,
-                                         {|| deserialize_109(s) }),
+                                         {|| deserialize_110(s) }),
                     span:
                         s.read_rec_field("span", 2u,
                                          {|| deserialize_19(s) }),}
@@ -5927,14 +6001,14 @@ fn deserialize_108<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::pat*/
-fn deserialize_107<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_108<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::pat {
 
-    s.read_box(/*syntax::ast::pat*/{|| @deserialize_108(s) })
+    s.read_box(/*syntax::ast::pat*/{|| @deserialize_109(s) })
 
 }
 /*syntax::ast::init_op*/
-fn deserialize_116<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_117<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::init_op {
     s.read_enum("syntax::ast::init_op",
 
@@ -5950,7 +6024,7 @@ fn deserialize_116<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::initializer*/
-fn deserialize_115<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_116<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::initializer {
 
     s.read_rec(
@@ -5961,15 +6035,15 @@ fn deserialize_115<S: std::serialization::deserializer>(s: S) ->
                /*@syntax::ast::expr*/
 
                {||
-                   {op: s.read_rec_field("op", 0u, {|| deserialize_116(s) }),
+                   {op: s.read_rec_field("op", 0u, {|| deserialize_117(s) }),
                     expr:
                         s.read_rec_field("expr", 1u,
-                                         {|| deserialize_70(s) }),}
+                                         {|| deserialize_71(s) }),}
                })
 
 }
 /*core::option::t<syntax::ast::initializer>*/
-fn deserialize_114<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_115<S: std::serialization::deserializer>(s: S) ->
    core::option::t<syntax::ast::initializer> {
     s.read_enum("core::option::t",
 
@@ -5982,7 +6056,7 @@ fn deserialize_114<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 core::option::some(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_115(s)
+                                                                                               deserialize_116(s)
                                                                                            }))
                                               }
                                             }
@@ -5990,7 +6064,7 @@ fn deserialize_114<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::local_*/
-fn deserialize_106<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_107<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::local_ {
 
     s.read_rec(
@@ -6012,15 +6086,15 @@ fn deserialize_106<S: std::serialization::deserializer>(s: S) ->
                                          {|| deserialize_18(s) }),
                     ty: s.read_rec_field("ty", 1u, {|| deserialize_29(s) }),
                     pat:
-                        s.read_rec_field("pat", 2u, {|| deserialize_107(s) }),
+                        s.read_rec_field("pat", 2u, {|| deserialize_108(s) }),
                     init:
                         s.read_rec_field("init", 3u,
-                                         {|| deserialize_114(s) }),
+                                         {|| deserialize_115(s) }),
                     id: s.read_rec_field("id", 4u, {|| deserialize_27(s) }),}
                })
 }
 /*syntax::ast::local*/
-fn deserialize_105<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_106<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::local {
 
     s.read_rec(
@@ -6033,7 +6107,7 @@ fn deserialize_105<S: std::serialization::deserializer>(s: S) ->
                {||
                    {node:
                         s.read_rec_field("node", 0u,
-                                         {|| deserialize_106(s) }),
+                                         {|| deserialize_107(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -6041,14 +6115,14 @@ fn deserialize_105<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::local*/
-fn deserialize_104<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_105<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::local {
 
-    s.read_box(/*syntax::ast::local*/{|| @deserialize_105(s) })
+    s.read_box(/*syntax::ast::local*/{|| @deserialize_106(s) })
 
 }
 /*[@syntax::ast::local]*/
-fn deserialize_103<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_104<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::local] {
     s.read_vec(
 
@@ -6057,19 +6131,19 @@ fn deserialize_103<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_104(s) })
+                                                   {|| deserialize_105(s) })
                                 })
                })
 }
 /*@syntax::ast::item*/
-fn deserialize_117<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_118<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::item {
 
     s.read_box(/*syntax::ast::item*/{|| @deserialize_0(s) })
 
 }
 /*syntax::ast::decl_*/
-fn deserialize_102<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_103<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::decl_ {
     s.read_enum("syntax::ast::decl_",
                 /*[@syntax::ast::local]*/
@@ -6081,13 +6155,13 @@ fn deserialize_102<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::decl_local(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_103(s)
+                                                                                                    deserialize_104(s)
                                                                                                 }))
                                               }
                                               1u {
                                                 syntax::ast::decl_item(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_117(s)
+                                                                                                   deserialize_118(s)
                                                                                                }))
                                               }
                                             }
@@ -6095,7 +6169,7 @@ fn deserialize_102<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::decl*/
-fn deserialize_101<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_102<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::decl {
 
     s.read_rec(
@@ -6108,7 +6182,7 @@ fn deserialize_101<S: std::serialization::deserializer>(s: S) ->
                {||
                    {node:
                         s.read_rec_field("node", 0u,
-                                         {|| deserialize_102(s) }),
+                                         {|| deserialize_103(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -6116,14 +6190,14 @@ fn deserialize_101<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::decl*/
-fn deserialize_100<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_101<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::decl {
 
-    s.read_box(/*syntax::ast::decl*/{|| @deserialize_101(s) })
+    s.read_box(/*syntax::ast::decl*/{|| @deserialize_102(s) })
 
 }
 /*syntax::ast::stmt_*/
-fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_100<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::stmt_ {
     s.read_enum("syntax::ast::stmt_",
                 /*@syntax::ast::decl*//*syntax::ast::node_id*/
@@ -6137,7 +6211,7 @@ fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::stmt_decl(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_100(s)
+                                                                                                   deserialize_101(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
@@ -6147,7 +6221,7 @@ fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::stmt_expr(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
@@ -6157,7 +6231,7 @@ fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 syntax::ast::stmt_semi(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
@@ -6169,7 +6243,7 @@ fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::stmt*/
-fn deserialize_98<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_99<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::stmt {
 
     s.read_rec(
@@ -6181,7 +6255,8 @@ fn deserialize_98<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_99(s) }),
+                        s.read_rec_field("node", 0u,
+                                         {|| deserialize_100(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -6189,14 +6264,14 @@ fn deserialize_98<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::stmt*/
-fn deserialize_97<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_98<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::stmt {
 
-    s.read_box(/*syntax::ast::stmt*/{|| @deserialize_98(s) })
+    s.read_box(/*syntax::ast::stmt*/{|| @deserialize_99(s) })
 
 }
 /*[@syntax::ast::stmt]*/
-fn deserialize_96<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_97<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::stmt] {
     s.read_vec(
 
@@ -6204,12 +6279,12 @@ fn deserialize_96<S: std::serialization::deserializer>(s: S) ->
                {|len|
                    vec::init_fn(len,
                                 {|i|
-                                    s.read_vec_elt(i, {|| deserialize_97(s) })
+                                    s.read_vec_elt(i, {|| deserialize_98(s) })
                                 })
                })
 }
 /*syntax::ast::blk_check_mode*/
-fn deserialize_118<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_119<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::blk_check_mode {
     s.read_enum("syntax::ast::blk_check_mode",
 
@@ -6230,7 +6305,7 @@ fn deserialize_118<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::blk_*/
-fn deserialize_82<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_83<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::blk_ {
 
     s.read_rec(
@@ -6249,21 +6324,21 @@ fn deserialize_82<S: std::serialization::deserializer>(s: S) ->
                {||
                    {view_items:
                         s.read_rec_field("view_items", 0u,
-                                         {|| deserialize_83(s) }),
+                                         {|| deserialize_84(s) }),
                     stmts:
                         s.read_rec_field("stmts", 1u,
-                                         {|| deserialize_96(s) }),
+                                         {|| deserialize_97(s) }),
                     expr:
-                        s.read_rec_field("expr", 2u, {|| deserialize_77(s) }),
+                        s.read_rec_field("expr", 2u, {|| deserialize_78(s) }),
                     id: s.read_rec_field("id", 3u, {|| deserialize_27(s) }),
                     rules:
                         s.read_rec_field("rules", 4u,
-                                         {|| deserialize_118(s) }),}
+                                         {|| deserialize_119(s) }),}
                })
 
 }
 /*syntax::ast::blk*/
-fn deserialize_81<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_82<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::blk {
 
     s.read_rec(
@@ -6275,7 +6350,7 @@ fn deserialize_81<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_82(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_83(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -6283,7 +6358,7 @@ fn deserialize_81<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*syntax::ast::arm*/
-fn deserialize_120<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_121<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::arm {
 
     s.read_rec(
@@ -6298,18 +6373,18 @@ fn deserialize_120<S: std::serialization::deserializer>(s: S) ->
                {||
                    {pats:
                         s.read_rec_field("pats", 0u,
-                                         {|| deserialize_111(s) }),
+                                         {|| deserialize_112(s) }),
                     guard:
                         s.read_rec_field("guard", 1u,
-                                         {|| deserialize_77(s) }),
+                                         {|| deserialize_78(s) }),
                     body:
                         s.read_rec_field("body", 2u,
-                                         {|| deserialize_81(s) }),}
+                                         {|| deserialize_82(s) }),}
                })
 
 }
 /*[syntax::ast::arm]*/
-fn deserialize_119<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_120<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::arm] {
     s.read_vec(
 
@@ -6318,12 +6393,12 @@ fn deserialize_119<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_120(s) })
+                                                   {|| deserialize_121(s) })
                                 })
                })
 }
 /*syntax::ast::alt_mode*/
-fn deserialize_121<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_122<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::alt_mode {
     s.read_enum("syntax::ast::alt_mode",
 
@@ -6341,11 +6416,11 @@ fn deserialize_121<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*int*/
-fn deserialize_127<S: std::serialization::deserializer>(s: S) -> int {
+fn deserialize_128<S: std::serialization::deserializer>(s: S) -> int {
     s.read_int()
 }
 /*syntax::ast::capture_item*/
-fn deserialize_126<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_127<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::capture_item {
 
     s.read_rec(
@@ -6358,7 +6433,7 @@ fn deserialize_126<S: std::serialization::deserializer>(s: S) ->
                /*syntax::codemap::span*/
 
                {||
-                   {id: s.read_rec_field("id", 0u, {|| deserialize_127(s) }),
+                   {id: s.read_rec_field("id", 0u, {|| deserialize_128(s) }),
                     name:
                         s.read_rec_field("name", 1u, {|| deserialize_1(s) }),
                     span:
@@ -6368,14 +6443,14 @@ fn deserialize_126<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::capture_item*/
-fn deserialize_125<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_126<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::capture_item {
 
-    s.read_box(/*syntax::ast::capture_item*/{|| @deserialize_126(s) })
+    s.read_box(/*syntax::ast::capture_item*/{|| @deserialize_127(s) })
 
 }
 /*[@syntax::ast::capture_item]*/
-fn deserialize_124<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_125<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::capture_item] {
     s.read_vec(
 
@@ -6384,12 +6459,12 @@ fn deserialize_124<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_125(s) })
+                                                   {|| deserialize_126(s) })
                                 })
                })
 }
 /*syntax::ast::capture_clause*/
-fn deserialize_123<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_124<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::capture_clause {
 
     s.read_rec(
@@ -6402,22 +6477,22 @@ fn deserialize_123<S: std::serialization::deserializer>(s: S) ->
                {||
                    {copies:
                         s.read_rec_field("copies", 0u,
-                                         {|| deserialize_124(s) }),
+                                         {|| deserialize_125(s) }),
                     moves:
                         s.read_rec_field("moves", 1u,
-                                         {|| deserialize_124(s) }),}
+                                         {|| deserialize_125(s) }),}
                })
 
 }
 /*@syntax::ast::capture_clause*/
-fn deserialize_122<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_123<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::capture_clause {
 
-    s.read_box(/*syntax::ast::capture_clause*/{|| @deserialize_123(s) })
+    s.read_box(/*syntax::ast::capture_clause*/{|| @deserialize_124(s) })
 
 }
 /*syntax::ast::expr_check_mode*/
-fn deserialize_128<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_129<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::expr_check_mode {
     s.read_enum("syntax::ast::expr_check_mode",
 
@@ -6433,7 +6508,7 @@ fn deserialize_128<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::expr_*/
-fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_73<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::expr_ {
     s.read_enum("syntax::ast::expr_",
                 /*[@syntax::ast::expr]*//*syntax::ast::mutability*/
@@ -6521,7 +6596,7 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::expr_vec(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_73(s)
+                                                                                                  deserialize_74(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
@@ -6531,21 +6606,21 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::expr_rec(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_74(s)
+                                                                                                  deserialize_75(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_77(s)
+                                                                                                  deserialize_78(s)
                                                                                               }))
                                               }
                                               2u {
                                                 syntax::ast::expr_call(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_73(s)
+                                                                                                   deserialize_74(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(2u,
                                                                                                {||
@@ -6555,53 +6630,53 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                               3u {
                                                 syntax::ast::expr_tup(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_73(s)
+                                                                                                  deserialize_74(s)
                                                                                               }))
                                               }
                                               4u {
                                                 syntax::ast::expr_bind(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_78(s)
+                                                                                                   deserialize_79(s)
                                                                                                }))
                                               }
                                               5u {
                                                 syntax::ast::expr_binary(s.read_enum_variant_arg(0u,
                                                                                                  {||
-                                                                                                     deserialize_79(s)
+                                                                                                     deserialize_80(s)
                                                                                                  }),
                                                                          s.read_enum_variant_arg(1u,
                                                                                                  {||
-                                                                                                     deserialize_70(s)
+                                                                                                     deserialize_71(s)
                                                                                                  }),
                                                                          s.read_enum_variant_arg(2u,
                                                                                                  {||
-                                                                                                     deserialize_70(s)
+                                                                                                     deserialize_71(s)
                                                                                                  }))
                                               }
                                               6u {
                                                 syntax::ast::expr_unary(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_80(s)
+                                                                                                    deserialize_81(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }))
                                               }
                                               7u {
                                                 syntax::ast::expr_lit(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_58(s)
+                                                                                                  deserialize_59(s)
                                                                                               }))
                                               }
                                               8u {
                                                 syntax::ast::expr_cast(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
@@ -6611,153 +6686,153 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                               9u {
                                                 syntax::ast::expr_if(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_70(s)
+                                                                                                 deserialize_71(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
-                                                                                                 deserialize_81(s)
+                                                                                                 deserialize_82(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(2u,
                                                                                              {||
-                                                                                                 deserialize_77(s)
+                                                                                                 deserialize_78(s)
                                                                                              }))
                                               }
                                               10u {
                                                 syntax::ast::expr_while(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_81(s)
+                                                                                                    deserialize_82(s)
                                                                                                 }))
                                               }
                                               11u {
                                                 syntax::ast::expr_for(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_104(s)
+                                                                                                  deserialize_105(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_70(s)
+                                                                                                  deserialize_71(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(2u,
                                                                                               {||
-                                                                                                  deserialize_81(s)
+                                                                                                  deserialize_82(s)
                                                                                               }))
                                               }
                                               12u {
                                                 syntax::ast::expr_do_while(s.read_enum_variant_arg(0u,
                                                                                                    {||
-                                                                                                       deserialize_81(s)
+                                                                                                       deserialize_82(s)
                                                                                                    }),
                                                                            s.read_enum_variant_arg(1u,
                                                                                                    {||
-                                                                                                       deserialize_70(s)
+                                                                                                       deserialize_71(s)
                                                                                                    }))
                                               }
                                               13u {
                                                 syntax::ast::expr_alt(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_70(s)
+                                                                                                  deserialize_71(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_119(s)
+                                                                                                  deserialize_120(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(2u,
                                                                                               {||
-                                                                                                  deserialize_121(s)
+                                                                                                  deserialize_122(s)
                                                                                               }))
                                               }
                                               14u {
                                                 syntax::ast::expr_fn(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_37(s)
+                                                                                                 deserialize_38(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
-                                                                                                 deserialize_38(s)
+                                                                                                 deserialize_39(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(2u,
                                                                                              {||
-                                                                                                 deserialize_81(s)
+                                                                                                 deserialize_82(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(3u,
                                                                                              {||
-                                                                                                 deserialize_122(s)
+                                                                                                 deserialize_123(s)
                                                                                              }))
                                               }
                                               15u {
                                                 syntax::ast::expr_fn_block(s.read_enum_variant_arg(0u,
                                                                                                    {||
-                                                                                                       deserialize_38(s)
+                                                                                                       deserialize_39(s)
                                                                                                    }),
                                                                            s.read_enum_variant_arg(1u,
                                                                                                    {||
-                                                                                                       deserialize_81(s)
+                                                                                                       deserialize_82(s)
                                                                                                    }))
                                               }
                                               16u {
                                                 syntax::ast::expr_block(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_81(s)
+                                                                                                    deserialize_82(s)
                                                                                                 }))
                                               }
                                               17u {
                                                 syntax::ast::expr_copy(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }))
                                               }
                                               18u {
                                                 syntax::ast::expr_move(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }))
                                               }
                                               19u {
                                                 syntax::ast::expr_assign(s.read_enum_variant_arg(0u,
                                                                                                  {||
-                                                                                                     deserialize_70(s)
+                                                                                                     deserialize_71(s)
                                                                                                  }),
                                                                          s.read_enum_variant_arg(1u,
                                                                                                  {||
-                                                                                                     deserialize_70(s)
+                                                                                                     deserialize_71(s)
                                                                                                  }))
                                               }
                                               20u {
                                                 syntax::ast::expr_swap(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_70(s)
+                                                                                                   deserialize_71(s)
                                                                                                }))
                                               }
                                               21u {
                                                 syntax::ast::expr_assign_op(s.read_enum_variant_arg(0u,
                                                                                                     {||
-                                                                                                        deserialize_79(s)
+                                                                                                        deserialize_80(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(1u,
                                                                                                     {||
-                                                                                                        deserialize_70(s)
+                                                                                                        deserialize_71(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(2u,
                                                                                                     {||
-                                                                                                        deserialize_70(s)
+                                                                                                        deserialize_71(s)
                                                                                                     }))
                                               }
                                               22u {
                                                 syntax::ast::expr_field(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
@@ -6765,29 +6840,29 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                                                                                 }),
                                                                         s.read_enum_variant_arg(2u,
                                                                                                 {||
-                                                                                                    deserialize_53(s)
+                                                                                                    deserialize_54(s)
                                                                                                 }))
                                               }
                                               23u {
                                                 syntax::ast::expr_index(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }))
                                               }
                                               24u {
                                                 syntax::ast::expr_path(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_49(s)
+                                                                                                   deserialize_50(s)
                                                                                                }))
                                               }
                                               25u {
                                                 syntax::ast::expr_fail(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_77(s)
+                                                                                                   deserialize_78(s)
                                                                                                }))
                                               }
                                               26u { syntax::ast::expr_break }
@@ -6795,63 +6870,63 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                                               28u {
                                                 syntax::ast::expr_ret(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_77(s)
+                                                                                                  deserialize_78(s)
                                                                                               }))
                                               }
                                               29u {
                                                 syntax::ast::expr_be(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_70(s)
+                                                                                                 deserialize_71(s)
                                                                                              }))
                                               }
                                               30u {
                                                 syntax::ast::expr_log(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_127(s)
+                                                                                                  deserialize_128(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_70(s)
+                                                                                                  deserialize_71(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(2u,
                                                                                               {||
-                                                                                                  deserialize_70(s)
+                                                                                                  deserialize_71(s)
                                                                                               }))
                                               }
                                               31u {
                                                 syntax::ast::expr_assert(s.read_enum_variant_arg(0u,
                                                                                                  {||
-                                                                                                     deserialize_70(s)
+                                                                                                     deserialize_71(s)
                                                                                                  }))
                                               }
                                               32u {
                                                 syntax::ast::expr_check(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_128(s)
+                                                                                                    deserialize_129(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }))
                                               }
                                               33u {
                                                 syntax::ast::expr_if_check(s.read_enum_variant_arg(0u,
                                                                                                    {||
-                                                                                                       deserialize_70(s)
+                                                                                                       deserialize_71(s)
                                                                                                    }),
                                                                            s.read_enum_variant_arg(1u,
                                                                                                    {||
-                                                                                                       deserialize_81(s)
+                                                                                                       deserialize_82(s)
                                                                                                    }),
                                                                            s.read_enum_variant_arg(2u,
                                                                                                    {||
-                                                                                                       deserialize_77(s)
+                                                                                                       deserialize_78(s)
                                                                                                    }))
                                               }
                                               34u {
                                                 syntax::ast::expr_mac(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_67(s)
+                                                                                                  deserialize_68(s)
                                                                                               }))
                                               }
                                             }
@@ -6859,7 +6934,7 @@ fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::expr*/
-fn deserialize_71<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_72<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::expr {
 
     s.read_rec(
@@ -6874,7 +6949,7 @@ fn deserialize_71<S: std::serialization::deserializer>(s: S) ->
                {||
                    {id: s.read_rec_field("id", 0u, {|| deserialize_27(s) }),
                     node:
-                        s.read_rec_field("node", 1u, {|| deserialize_72(s) }),
+                        s.read_rec_field("node", 1u, {|| deserialize_73(s) }),
                     span:
                         s.read_rec_field("span", 2u,
                                          {|| deserialize_19(s) }),}
@@ -6882,14 +6957,14 @@ fn deserialize_71<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::expr*/
-fn deserialize_70<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_71<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::expr {
 
-    s.read_box(/*syntax::ast::expr*/{|| @deserialize_71(s) })
+    s.read_box(/*syntax::ast::expr*/{|| @deserialize_72(s) })
 
 }
 /*syntax::ast::mac_arg<@syntax::ast::expr>*/
-fn deserialize_69<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_70<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mac_arg<@syntax::ast::expr> {
     s.read_enum("core::option::t",
 
@@ -6902,7 +6977,7 @@ fn deserialize_69<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 core::option::some(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_70(s)
+                                                                                               deserialize_71(s)
                                                                                            }))
                                               }
                                             }
@@ -6910,7 +6985,7 @@ fn deserialize_69<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::mac_body_*/
-fn deserialize_130<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_131<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mac_body_ {
 
     s.read_rec(
@@ -6926,7 +7001,7 @@ fn deserialize_130<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*syntax::ast::mac_body<syntax::ast::mac_body_>*/
-fn deserialize_129<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_130<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mac_body<syntax::ast::mac_body_> {
     s.read_enum("core::option::t",
 
@@ -6939,7 +7014,7 @@ fn deserialize_129<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 core::option::some(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_130(s)
+                                                                                               deserialize_131(s)
                                                                                            }))
                                               }
                                             }
@@ -6947,7 +7022,7 @@ fn deserialize_129<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::mac_*/
-fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_69<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mac_ {
     s.read_enum("syntax::ast::mac_",
                 /*@syntax::ast::path*/
@@ -6969,15 +7044,15 @@ fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::mac_invoc(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_49(s)
+                                                                                                   deserialize_50(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_69(s)
+                                                                                                   deserialize_70(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(2u,
                                                                                                {||
-                                                                                                   deserialize_129(s)
+                                                                                                   deserialize_130(s)
                                                                                                }))
                                               }
                                               1u {
@@ -6989,7 +7064,7 @@ fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 syntax::ast::mac_embed_block(s.read_enum_variant_arg(0u,
                                                                                                      {||
-                                                                                                         deserialize_81(s)
+                                                                                                         deserialize_82(s)
                                                                                                      }))
                                               }
                                               3u { syntax::ast::mac_ellipsis }
@@ -7000,7 +7075,7 @@ fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
                                                                                             }),
                                                                     s.read_enum_variant_arg(1u,
                                                                                             {||
-                                                                                                deserialize_70(s)
+                                                                                                deserialize_71(s)
                                                                                             }))
                                               }
                                               5u {
@@ -7014,7 +7089,7 @@ fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::mac*/
-fn deserialize_67<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_68<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::mac {
 
     s.read_rec(
@@ -7026,7 +7101,7 @@ fn deserialize_67<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {node:
-                        s.read_rec_field("node", 0u, {|| deserialize_68(s) }),
+                        s.read_rec_field("node", 0u, {|| deserialize_69(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -7049,6 +7124,8 @@ fn deserialize_31<S: std::serialization::deserializer>(s: S) ->
 
                 /*syntax::ast::mt*/
 
+                /*syntax::ast::region*//*syntax::ast::mt*/
+
                 /*[syntax::ast::ty_field]*/
 
                 /*syntax::ast::proto*//*syntax::ast::fn_decl*/
@@ -7092,54 +7169,64 @@ fn deserialize_31<S: std::serialization::deserializer>(s: S) ->
                                                                                             }))
                                               }
                                               6u {
+                                                syntax::ast::ty_rptr(s.read_enum_variant_arg(0u,
+                                                                                             {||
+                                                                                                 deserialize_34(s)
+                                                                                             }),
+                                                                     s.read_enum_variant_arg(1u,
+                                                                                             {||
+                                                                                                 deserialize_32(s)
+                                                                                             }))
+                                              }
+                                              7u {
                                                 syntax::ast::ty_rec(s.read_enum_variant_arg(0u,
                                                                                             {||
-                                                                                                deserialize_34(s)
+                                                                                                deserialize_35(s)
                                                                                             }))
                                               }
-                                              7u {
+                                              8u {
                                                 syntax::ast::ty_fn(s.read_enum_variant_arg(0u,
                                                                                            {||
-                                                                                               deserialize_37(s)
+                                                                                               deserialize_38(s)
                                                                                            }),
                                                                    s.read_enum_variant_arg(1u,
                                                                                            {||
-                                                                                               deserialize_38(s)
+                                                                                               deserialize_39(s)
                                                                                            }))
                                               }
-                                              8u {
+                                              9u {
                                                 syntax::ast::ty_tup(s.read_enum_variant_arg(0u,
                                                                                             {||
-                                                                                                deserialize_53(s)
+                                                                                                deserialize_54(s)
                                                                                             }))
                                               }
-                                              9u {
+                                              10u {
                                                 syntax::ast::ty_path(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_49(s)
+                                                                                                 deserialize_50(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
                                                                                                  deserialize_27(s)
                                                                                              }))
                                               }
-                                              10u {
+                                              11u {
                                                 syntax::ast::ty_constr(s.read_enum_variant_arg(0u,
                                                                                                {||
                                                                                                    deserialize_29(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_59(s)
+                                                                                                   deserialize_60(s)
                                                                                                }))
                                               }
-                                              11u {
+                                              12u {
                                                 syntax::ast::ty_mac(s.read_enum_variant_arg(0u,
                                                                                             {||
-                                                                                                deserialize_67(s)
+                                                                                                deserialize_68(s)
                                                                                             }))
                                               }
-                                              12u { syntax::ast::ty_infer }
+                                              13u { syntax::ast::ty_infer }
                                             }
                                         })
                 })
@@ -7172,7 +7259,7 @@ fn deserialize_29<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*syntax::ast::ty_param_bound*/
-fn deserialize_135<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_136<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_param_bound {
     s.read_enum("syntax::ast::ty_param_bound",
 
@@ -7196,7 +7283,7 @@ fn deserialize_135<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*[syntax::ast::ty_param_bound]*/
-fn deserialize_134<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_135<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::ty_param_bound] {
     s.read_vec(
 
@@ -7205,19 +7292,19 @@ fn deserialize_134<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_135(s) })
+                                                   {|| deserialize_136(s) })
                                 })
                })
 }
 /*@[syntax::ast::ty_param_bound]*/
-fn deserialize_133<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_134<S: std::serialization::deserializer>(s: S) ->
    @[syntax::ast::ty_param_bound] {
 
-    s.read_box(/*[syntax::ast::ty_param_bound]*/{|| @deserialize_134(s) })
+    s.read_box(/*[syntax::ast::ty_param_bound]*/{|| @deserialize_135(s) })
 
 }
 /*syntax::ast::ty_param*/
-fn deserialize_132<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_133<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_param {
 
     s.read_rec(
@@ -7235,12 +7322,12 @@ fn deserialize_132<S: std::serialization::deserializer>(s: S) ->
                     id: s.read_rec_field("id", 1u, {|| deserialize_27(s) }),
                     bounds:
                         s.read_rec_field("bounds", 2u,
-                                         {|| deserialize_133(s) }),}
+                                         {|| deserialize_134(s) }),}
                })
 
 }
 /*[syntax::ast::ty_param]*/
-fn deserialize_131<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_132<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::ty_param] {
     s.read_vec(
 
@@ -7249,12 +7336,12 @@ fn deserialize_131<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_132(s) })
+                                                   {|| deserialize_133(s) })
                                 })
                })
 }
 /*[@syntax::ast::item]*/
-fn deserialize_137<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_138<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::item] {
     s.read_vec(
 
@@ -7263,12 +7350,12 @@ fn deserialize_137<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_117(s) })
+                                                   {|| deserialize_118(s) })
                                 })
                })
 }
 /*syntax::ast::_mod*/
-fn deserialize_136<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_137<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::_mod {
 
     s.read_rec(
@@ -7281,15 +7368,15 @@ fn deserialize_136<S: std::serialization::deserializer>(s: S) ->
                {||
                    {view_items:
                         s.read_rec_field("view_items", 0u,
-                                         {|| deserialize_83(s) }),
+                                         {|| deserialize_84(s) }),
                     items:
                         s.read_rec_field("items", 1u,
-                                         {|| deserialize_137(s) }),}
+                                         {|| deserialize_138(s) }),}
                })
 
 }
 /*syntax::ast::native_item_*/
-fn deserialize_142<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_143<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::native_item_ {
     s.read_enum("syntax::ast::native_item_",
                 /*syntax::ast::fn_decl*//*[syntax::ast::ty_param]*/
@@ -7299,11 +7386,11 @@ fn deserialize_142<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::native_item_fn(s.read_enum_variant_arg(0u,
                                                                                                     {||
-                                                                                                        deserialize_38(s)
+                                                                                                        deserialize_39(s)
                                                                                                     }),
                                                                             s.read_enum_variant_arg(1u,
                                                                                                     {||
-                                                                                                        deserialize_131(s)
+                                                                                                        deserialize_132(s)
                                                                                                     }))
                                               }
                                             }
@@ -7311,7 +7398,7 @@ fn deserialize_142<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::native_item*/
-fn deserialize_141<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_142<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::native_item {
 
     s.read_rec(
@@ -7334,7 +7421,7 @@ fn deserialize_141<S: std::serialization::deserializer>(s: S) ->
                         s.read_rec_field("attrs", 1u, {|| deserialize_2(s) }),
                     node:
                         s.read_rec_field("node", 2u,
-                                         {|| deserialize_142(s) }),
+                                         {|| deserialize_143(s) }),
                     id: s.read_rec_field("id", 3u, {|| deserialize_27(s) }),
                     span:
                         s.read_rec_field("span", 4u,
@@ -7343,14 +7430,14 @@ fn deserialize_141<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::native_item*/
-fn deserialize_140<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_141<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::native_item {
 
-    s.read_box(/*syntax::ast::native_item*/{|| @deserialize_141(s) })
+    s.read_box(/*syntax::ast::native_item*/{|| @deserialize_142(s) })
 
 }
 /*[@syntax::ast::native_item]*/
-fn deserialize_139<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_140<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::native_item] {
     s.read_vec(
 
@@ -7359,12 +7446,12 @@ fn deserialize_139<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_140(s) })
+                                                   {|| deserialize_141(s) })
                                 })
                })
 }
 /*syntax::ast::native_mod*/
-fn deserialize_138<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_139<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::native_mod {
 
     s.read_rec(
@@ -7377,15 +7464,15 @@ fn deserialize_138<S: std::serialization::deserializer>(s: S) ->
                {||
                    {view_items:
                         s.read_rec_field("view_items", 0u,
-                                         {|| deserialize_83(s) }),
+                                         {|| deserialize_84(s) }),
                     items:
                         s.read_rec_field("items", 1u,
-                                         {|| deserialize_139(s) }),}
+                                         {|| deserialize_140(s) }),}
                })
 
 }
 /*syntax::ast::variant_arg*/
-fn deserialize_147<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_148<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::variant_arg {
 
     s.read_rec(
@@ -7401,7 +7488,7 @@ fn deserialize_147<S: std::serialization::deserializer>(s: S) ->
                })
 }
 /*[syntax::ast::variant_arg]*/
-fn deserialize_146<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_147<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::variant_arg] {
     s.read_vec(
 
@@ -7410,12 +7497,12 @@ fn deserialize_146<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_147(s) })
+                                                   {|| deserialize_148(s) })
                                 })
                })
 }
 /*syntax::ast::variant_*/
-fn deserialize_145<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_146<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::variant_ {
 
     s.read_rec(
@@ -7438,16 +7525,16 @@ fn deserialize_145<S: std::serialization::deserializer>(s: S) ->
                         s.read_rec_field("attrs", 1u, {|| deserialize_2(s) }),
                     args:
                         s.read_rec_field("args", 2u,
-                                         {|| deserialize_146(s) }),
+                                         {|| deserialize_147(s) }),
                     id: s.read_rec_field("id", 3u, {|| deserialize_27(s) }),
                     disr_expr:
                         s.read_rec_field("disr_expr", 4u,
-                                         {|| deserialize_77(s) }),}
+                                         {|| deserialize_78(s) }),}
                })
 
 }
 /*syntax::ast::variant*/
-fn deserialize_144<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_145<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::variant {
 
     s.read_rec(
@@ -7460,7 +7547,7 @@ fn deserialize_144<S: std::serialization::deserializer>(s: S) ->
                {||
                    {node:
                         s.read_rec_field("node", 0u,
-                                         {|| deserialize_145(s) }),
+                                         {|| deserialize_146(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -7468,7 +7555,7 @@ fn deserialize_144<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*[syntax::ast::variant]*/
-fn deserialize_143<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_144<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::variant] {
     s.read_vec(
 
@@ -7477,12 +7564,12 @@ fn deserialize_143<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_144(s) })
+                                                   {|| deserialize_145(s) })
                                 })
                })
 }
 /*syntax::ast::privacy*/
-fn deserialize_152<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_153<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::privacy {
     s.read_enum("syntax::ast::privacy",
 
@@ -7498,7 +7585,7 @@ fn deserialize_152<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::class_mutability*/
-fn deserialize_154<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_155<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_mutability {
     s.read_enum("syntax::ast::class_mutability",
 
@@ -7518,7 +7605,7 @@ fn deserialize_154<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::class_member*/
-fn deserialize_153<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_154<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_member {
     s.read_enum("syntax::ast::class_member",
                 /*syntax::ast::ident*//*@syntax::ast::ty*/
@@ -7539,7 +7626,7 @@ fn deserialize_153<S: std::serialization::deserializer>(s: S) ->
                                                                                                   }),
                                                                           s.read_enum_variant_arg(2u,
                                                                                                   {||
-                                                                                                      deserialize_154(s)
+                                                                                                      deserialize_155(s)
                                                                                                   }),
                                                                           s.read_enum_variant_arg(3u,
                                                                                                   {||
@@ -7549,7 +7636,7 @@ fn deserialize_153<S: std::serialization::deserializer>(s: S) ->
                                               1u {
                                                 syntax::ast::class_method(s.read_enum_variant_arg(0u,
                                                                                                   {||
-                                                                                                      deserialize_117(s)
+                                                                                                      deserialize_118(s)
                                                                                                   }))
                                               }
                                             }
@@ -7557,7 +7644,7 @@ fn deserialize_153<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::class_item_*/
-fn deserialize_151<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_152<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_item_ {
 
     s.read_rec(
@@ -7570,15 +7657,15 @@ fn deserialize_151<S: std::serialization::deserializer>(s: S) ->
                {||
                    {privacy:
                         s.read_rec_field("privacy", 0u,
-                                         {|| deserialize_152(s) }),
+                                         {|| deserialize_153(s) }),
                     decl:
                         s.read_rec_field("decl", 1u,
-                                         {|| deserialize_153(s) }),}
+                                         {|| deserialize_154(s) }),}
                })
 
 }
 /*syntax::ast::class_item*/
-fn deserialize_150<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_151<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_item {
 
     s.read_rec(
@@ -7591,7 +7678,7 @@ fn deserialize_150<S: std::serialization::deserializer>(s: S) ->
                {||
                    {node:
                         s.read_rec_field("node", 0u,
-                                         {|| deserialize_151(s) }),
+                                         {|| deserialize_152(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -7599,14 +7686,14 @@ fn deserialize_150<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::class_item*/
-fn deserialize_149<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_150<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::class_item {
 
-    s.read_box(/*syntax::ast::class_item*/{|| @deserialize_150(s) })
+    s.read_box(/*syntax::ast::class_item*/{|| @deserialize_151(s) })
 
 }
 /*[@syntax::ast::class_item]*/
-fn deserialize_148<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_149<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::class_item] {
     s.read_vec(
 
@@ -7615,12 +7702,12 @@ fn deserialize_148<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_149(s) })
+                                                   {|| deserialize_150(s) })
                                 })
                })
 }
 /*syntax::ast::class_ctor_*/
-fn deserialize_156<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_157<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_ctor_ {
 
     s.read_rec(
@@ -7634,15 +7721,15 @@ fn deserialize_156<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {id: s.read_rec_field("id", 0u, {|| deserialize_27(s) }),
-                    dec: s.read_rec_field("dec", 1u, {|| deserialize_38(s) }),
+                    dec: s.read_rec_field("dec", 1u, {|| deserialize_39(s) }),
                     body:
                         s.read_rec_field("body", 2u,
-                                         {|| deserialize_81(s) }),}
+                                         {|| deserialize_82(s) }),}
                })
 
 }
 /*syntax::ast::class_ctor*/
-fn deserialize_155<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_156<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::class_ctor {
 
     s.read_rec(
@@ -7655,7 +7742,7 @@ fn deserialize_155<S: std::serialization::deserializer>(s: S) ->
                {||
                    {node:
                         s.read_rec_field("node", 0u,
-                                         {|| deserialize_156(s) }),
+                                         {|| deserialize_157(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -7663,7 +7750,7 @@ fn deserialize_155<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*syntax::ast::ty_method*/
-fn deserialize_158<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_159<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::ty_method {
 
     s.read_rec(
@@ -7685,9 +7772,9 @@ fn deserialize_158<S: std::serialization::deserializer>(s: S) ->
                     attrs:
                         s.read_rec_field("attrs", 1u, {|| deserialize_2(s) }),
                     decl:
-                        s.read_rec_field("decl", 2u, {|| deserialize_38(s) }),
+                        s.read_rec_field("decl", 2u, {|| deserialize_39(s) }),
                     tps:
-                        s.read_rec_field("tps", 3u, {|| deserialize_131(s) }),
+                        s.read_rec_field("tps", 3u, {|| deserialize_132(s) }),
                     span:
                         s.read_rec_field("span", 4u,
                                          {|| deserialize_19(s) }),}
@@ -7695,7 +7782,7 @@ fn deserialize_158<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*[syntax::ast::ty_method]*/
-fn deserialize_157<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_158<S: std::serialization::deserializer>(s: S) ->
    [syntax::ast::ty_method] {
     s.read_vec(
 
@@ -7704,12 +7791,12 @@ fn deserialize_157<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_158(s) })
+                                                   {|| deserialize_159(s) })
                                 })
                })
 }
 /*core::option::t<@syntax::ast::ty>*/
-fn deserialize_159<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_160<S: std::serialization::deserializer>(s: S) ->
    core::option::t<@syntax::ast::ty> {
     s.read_enum("core::option::t",
 
@@ -7730,7 +7817,7 @@ fn deserialize_159<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*syntax::ast::method*/
-fn deserialize_162<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::method {
 
     s.read_rec(
@@ -7756,11 +7843,11 @@ fn deserialize_162<S: std::serialization::deserializer>(s: S) ->
                     attrs:
                         s.read_rec_field("attrs", 1u, {|| deserialize_2(s) }),
                     tps:
-                        s.read_rec_field("tps", 2u, {|| deserialize_131(s) }),
+                        s.read_rec_field("tps", 2u, {|| deserialize_132(s) }),
                     decl:
-                        s.read_rec_field("decl", 3u, {|| deserialize_38(s) }),
+                        s.read_rec_field("decl", 3u, {|| deserialize_39(s) }),
                     body:
-                        s.read_rec_field("body", 4u, {|| deserialize_81(s) }),
+                        s.read_rec_field("body", 4u, {|| deserialize_82(s) }),
                     id: s.read_rec_field("id", 5u, {|| deserialize_27(s) }),
                     span:
                         s.read_rec_field("span", 6u,
@@ -7769,14 +7856,14 @@ fn deserialize_162<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*@syntax::ast::method*/
-fn deserialize_161<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_162<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::method {
 
-    s.read_box(/*syntax::ast::method*/{|| @deserialize_162(s) })
+    s.read_box(/*syntax::ast::method*/{|| @deserialize_163(s) })
 
 }
 /*[@syntax::ast::method]*/
-fn deserialize_160<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_161<S: std::serialization::deserializer>(s: S) ->
    [@syntax::ast::method] {
     s.read_vec(
 
@@ -7785,7 +7872,7 @@ fn deserialize_160<S: std::serialization::deserializer>(s: S) ->
                    vec::init_fn(len,
                                 {|i|
                                     s.read_vec_elt(i,
-                                                   {|| deserialize_161(s) })
+                                                   {|| deserialize_162(s) })
                                 })
                })
 }
@@ -7828,33 +7915,33 @@ fn deserialize_28<S: std::serialization::deserializer>(s: S) ->
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_70(s)
+                                                                                                    deserialize_71(s)
                                                                                                 }))
                                               }
                                               1u {
                                                 syntax::ast::item_fn(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_38(s)
+                                                                                                 deserialize_39(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
-                                                                                                 deserialize_131(s)
+                                                                                                 deserialize_132(s)
                                                                                              }),
                                                                      s.read_enum_variant_arg(2u,
                                                                                              {||
-                                                                                                 deserialize_81(s)
+                                                                                                 deserialize_82(s)
                                                                                              }))
                                               }
                                               2u {
                                                 syntax::ast::item_mod(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_136(s)
+                                                                                                  deserialize_137(s)
                                                                                               }))
                                               }
                                               3u {
                                                 syntax::ast::item_native_mod(s.read_enum_variant_arg(0u,
                                                                                                      {||
-                                                                                                         deserialize_138(s)
+                                                                                                         deserialize_139(s)
                                                                                                      }))
                                               }
                                               4u {
@@ -7864,31 +7951,31 @@ fn deserialize_28<S: std::serialization::deserializer>(s: S) ->
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
-                                                                                                 deserialize_131(s)
+                                                                                                 deserialize_132(s)
                                                                                              }))
                                               }
                                               5u {
                                                 syntax::ast::item_enum(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_143(s)
+                                                                                                   deserialize_144(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_131(s)
+                                                                                                   deserialize_132(s)
                                                                                                }))
                                               }
                                               6u {
                                                 syntax::ast::item_res(s.read_enum_variant_arg(0u,
                                                                                               {||
-                                                                                                  deserialize_38(s)
+                                                                                                  deserialize_39(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(1u,
                                                                                               {||
-                                                                                                  deserialize_131(s)
+                                                                                                  deserialize_132(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(2u,
                                                                                               {||
-                                                                                                  deserialize_81(s)
+                                                                                                  deserialize_82(s)
                                                                                               }),
                                                                       s.read_enum_variant_arg(3u,
                                                                                               {||
@@ -7902,35 +7989,35 @@ fn deserialize_28<S: std::serialization::deserializer>(s: S) ->
                                               7u {
                                                 syntax::ast::item_class(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_131(s)
+                                                                                                    deserialize_132(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_148(s)
+                                                                                                    deserialize_149(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(2u,
                                                                                                 {||
-                                                                                                    deserialize_155(s)
+                                                                                                    deserialize_156(s)
                                                                                                 }))
                                               }
                                               8u {
                                                 syntax::ast::item_iface(s.read_enum_variant_arg(0u,
                                                                                                 {||
-                                                                                                    deserialize_131(s)
+                                                                                                    deserialize_132(s)
                                                                                                 }),
                                                                         s.read_enum_variant_arg(1u,
                                                                                                 {||
-                                                                                                    deserialize_157(s)
+                                                                                                    deserialize_158(s)
                                                                                                 }))
                                               }
                                               9u {
                                                 syntax::ast::item_impl(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_131(s)
+                                                                                                   deserialize_132(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_159(s)
+                                                                                                   deserialize_160(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(2u,
                                                                                                {||
@@ -7938,7 +8025,7 @@ fn deserialize_28<S: std::serialization::deserializer>(s: S) ->
                                                                                                }),
                                                                        s.read_enum_variant_arg(3u,
                                                                                                {||
-                                                                                                   deserialize_160(s)
+                                                                                                   deserialize_161(s)
                                                                                                }))
                                               }
                                             }
@@ -7981,27 +8068,27 @@ fn deserialize_syntax_ast_item<S: std::serialization::deserializer>(s: S) ->
     deserialize_0(s)
 }
 /*syntax::ast::crate_num*/
-fn serialize_165<S: std::serialization::serializer>(s: S,
+fn serialize_166<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::crate_num) {
     s.emit_int(v);
 }
 /*syntax::ast::def_id*/
-fn serialize_164<S: std::serialization::serializer>(s: S,
+fn serialize_165<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::def_id) {
 
     s.emit_rec(/*syntax::ast::crate_num*//*syntax::ast::node_id*/
                {||
                    {
                        s.emit_rec_field("crate", 0u,
-                                        {|| serialize_165(s, v.crate) });
+                                        {|| serialize_166(s, v.crate) });
                        s.emit_rec_field("node", 1u,
                                         {|| serialize_27(s, v.node) })
                    }
                });
 }
 /*syntax::ast::prim_ty*/
-fn serialize_166<S: std::serialization::serializer>(s: S,
+fn serialize_167<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::prim_ty) {
 
     s.emit_enum("syntax::ast::prim_ty",
@@ -8059,13 +8146,13 @@ fn serialize_166<S: std::serialization::serializer>(s: S,
                 });
 }
 /*@syntax::ast::def*/
-fn serialize_167<S: std::serialization::serializer>(s: S,
+fn serialize_168<S: std::serialization::serializer>(s: S,
                                                     v: @syntax::ast::def) {
 
-    s.emit_box(/*syntax::ast::def*/{|| serialize_163(s, *v) });
+    s.emit_box(/*syntax::ast::def*/{|| serialize_164(s, *v) });
 }
 /*syntax::ast::def*/
-fn serialize_163<S: std::serialization::serializer>(s: S,
+fn serialize_164<S: std::serialization::serializer>(s: S,
                                                     v: syntax::ast::def) {
 
     s.emit_enum("syntax::ast::def",
@@ -8096,12 +8183,12 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_43(s,
+                                                                                serialize_44(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -8125,7 +8212,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8138,7 +8225,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8150,7 +8237,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8167,7 +8254,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_41(s,
+                                                                                serialize_42(s,
                                                                                              v1)
                                                                             })
                                                 }
@@ -8197,12 +8284,12 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -8214,7 +8301,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8227,7 +8314,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_166(s,
+                                                                                serialize_167(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8240,7 +8327,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -8270,7 +8357,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8287,7 +8374,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_167(s,
+                                                                                serialize_168(s,
                                                                                               v1)
                                                                             });
                                                     s.emit_enum_variant_arg(2u,
@@ -8304,7 +8391,7 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8317,12 +8404,12 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -8335,12 +8422,12 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -8352,15 +8439,15 @@ fn serialize_163<S: std::serialization::serializer>(s: S,
 fn serialize_syntax_ast_def<S: std::serialization::serializer>(s: S,
                                                                v:
                                                                    syntax::ast::def) {
-    serialize_163(s, v);
+    serialize_164(s, v);
 }
 /*syntax::ast::crate_num*/
-fn deserialize_165<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_166<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::crate_num {
     s.read_int()
 }
 /*syntax::ast::def_id*/
-fn deserialize_164<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_165<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::def_id {
 
     s.read_rec(
@@ -8373,7 +8460,7 @@ fn deserialize_164<S: std::serialization::deserializer>(s: S) ->
                {||
                    {crate:
                         s.read_rec_field("crate", 0u,
-                                         {|| deserialize_165(s) }),
+                                         {|| deserialize_166(s) }),
                     node:
                         s.read_rec_field("node", 1u,
                                          {|| deserialize_27(s) }),}
@@ -8381,7 +8468,7 @@ fn deserialize_164<S: std::serialization::deserializer>(s: S) ->
 
 }
 /*syntax::ast::prim_ty*/
-fn deserialize_166<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_167<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::prim_ty {
     s.read_enum("syntax::ast::prim_ty",
                 /*syntax::ast::int_ty*/
@@ -8421,14 +8508,14 @@ fn deserialize_166<S: std::serialization::deserializer>(s: S) ->
                 })
 }
 /*@syntax::ast::def*/
-fn deserialize_167<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_168<S: std::serialization::deserializer>(s: S) ->
    @syntax::ast::def {
 
-    s.read_box(/*syntax::ast::def*/{|| @deserialize_163(s) })
+    s.read_box(/*syntax::ast::def*/{|| @deserialize_164(s) })
 
 }
 /*syntax::ast::def*/
-fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_164<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::def {
     s.read_enum("syntax::ast::def",
                 /*syntax::ast::def_id*//*syntax::ast::purity*/
@@ -8472,11 +8559,11 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::def_fn(s.read_enum_variant_arg(0u,
                                                                                             {||
-                                                                                                deserialize_164(s)
+                                                                                                deserialize_165(s)
                                                                                             }),
                                                                     s.read_enum_variant_arg(1u,
                                                                                             {||
-                                                                                                deserialize_43(s)
+                                                                                                deserialize_44(s)
                                                                                             }))
                                               }
                                               1u {
@@ -8488,19 +8575,19 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 syntax::ast::def_mod(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_164(s)
+                                                                                                 deserialize_165(s)
                                                                                              }))
                                               }
                                               3u {
                                                 syntax::ast::def_native_mod(s.read_enum_variant_arg(0u,
                                                                                                     {||
-                                                                                                        deserialize_164(s)
+                                                                                                        deserialize_165(s)
                                                                                                     }))
                                               }
                                               4u {
                                                 syntax::ast::def_const(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_164(s)
+                                                                                                   deserialize_165(s)
                                                                                                }))
                                               }
                                               5u {
@@ -8510,7 +8597,7 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                                                                              }),
                                                                      s.read_enum_variant_arg(1u,
                                                                                              {||
-                                                                                                 deserialize_41(s)
+                                                                                                 deserialize_42(s)
                                                                                              }))
                                               }
                                               6u {
@@ -8526,29 +8613,29 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                               7u {
                                                 syntax::ast::def_variant(s.read_enum_variant_arg(0u,
                                                                                                  {||
-                                                                                                     deserialize_164(s)
+                                                                                                     deserialize_165(s)
                                                                                                  }),
                                                                          s.read_enum_variant_arg(1u,
                                                                                                  {||
-                                                                                                     deserialize_164(s)
+                                                                                                     deserialize_165(s)
                                                                                                  }))
                                               }
                                               8u {
                                                 syntax::ast::def_ty(s.read_enum_variant_arg(0u,
                                                                                             {||
-                                                                                                deserialize_164(s)
+                                                                                                deserialize_165(s)
                                                                                             }))
                                               }
                                               9u {
                                                 syntax::ast::def_prim_ty(s.read_enum_variant_arg(0u,
                                                                                                  {||
-                                                                                                     deserialize_166(s)
+                                                                                                     deserialize_167(s)
                                                                                                  }))
                                               }
                                               10u {
                                                 syntax::ast::def_ty_param(s.read_enum_variant_arg(0u,
                                                                                                   {||
-                                                                                                      deserialize_164(s)
+                                                                                                      deserialize_165(s)
                                                                                                   }),
                                                                           s.read_enum_variant_arg(1u,
                                                                                                   {||
@@ -8564,7 +8651,7 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                               12u {
                                                 syntax::ast::def_use(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_164(s)
+                                                                                                 deserialize_165(s)
                                                                                              }))
                                               }
                                               13u {
@@ -8574,7 +8661,7 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_167(s)
+                                                                                                   deserialize_168(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(2u,
                                                                                                {||
@@ -8584,27 +8671,27 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
                                               14u {
                                                 syntax::ast::def_class(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_164(s)
+                                                                                                   deserialize_165(s)
                                                                                                }))
                                               }
                                               15u {
                                                 syntax::ast::def_class_field(s.read_enum_variant_arg(0u,
                                                                                                      {||
-                                                                                                         deserialize_164(s)
+                                                                                                         deserialize_165(s)
                                                                                                      }),
                                                                              s.read_enum_variant_arg(1u,
                                                                                                      {||
-                                                                                                         deserialize_164(s)
+                                                                                                         deserialize_165(s)
                                                                                                      }))
                                               }
                                               16u {
                                                 syntax::ast::def_class_method(s.read_enum_variant_arg(0u,
                                                                                                       {||
-                                                                                                          deserialize_164(s)
+                                                                                                          deserialize_165(s)
                                                                                                       }),
                                                                               s.read_enum_variant_arg(1u,
                                                                                                       {||
-                                                                                                          deserialize_164(s)
+                                                                                                          deserialize_165(s)
                                                                                                       }))
                                               }
                                             }
@@ -8613,10 +8700,10 @@ fn deserialize_163<S: std::serialization::deserializer>(s: S) ->
 }
 fn deserialize_syntax_ast_def<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::def {
-    deserialize_163(s)
+    deserialize_164(s)
 }
 /*middle::typeck::method_origin*/
-fn serialize_168<S: std::serialization::serializer>(s: S,
+fn serialize_169<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         middle::typeck::method_origin) {
     s.emit_enum("middle::typeck::method_origin",
@@ -8632,7 +8719,7 @@ fn serialize_168<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8645,7 +8732,7 @@ fn serialize_168<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -8673,7 +8760,7 @@ fn serialize_168<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
@@ -8691,10 +8778,10 @@ fn serialize_middle_typeck_method_origin<S: std::serialization::serializer>(s:
                                                                                 S,
                                                                             v:
                                                                                 middle::typeck::method_origin) {
-    serialize_168(s, v);
+    serialize_169(s, v);
 }
 /*middle::typeck::method_origin*/
-fn deserialize_168<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_169<S: std::serialization::deserializer>(s: S) ->
    middle::typeck::method_origin {
     s.read_enum("middle::typeck::method_origin",
                 /*syntax::ast::def_id*/
@@ -8708,13 +8795,13 @@ fn deserialize_168<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 middle::typeck::method_static(s.read_enum_variant_arg(0u,
                                                                                                       {||
-                                                                                                          deserialize_164(s)
+                                                                                                          deserialize_165(s)
                                                                                                       }))
                                               }
                                               1u {
                                                 middle::typeck::method_param(s.read_enum_variant_arg(0u,
                                                                                                      {||
-                                                                                                         deserialize_164(s)
+                                                                                                         deserialize_165(s)
                                                                                                      }),
                                                                              s.read_enum_variant_arg(1u,
                                                                                                      {||
@@ -8732,7 +8819,7 @@ fn deserialize_168<S: std::serialization::deserializer>(s: S) ->
                                               2u {
                                                 middle::typeck::method_iface(s.read_enum_variant_arg(0u,
                                                                                                      {||
-                                                                                                         deserialize_164(s)
+                                                                                                         deserialize_165(s)
                                                                                                      }),
                                                                              s.read_enum_variant_arg(1u,
                                                                                                      {||
@@ -8746,17 +8833,17 @@ fn deserialize_168<S: std::serialization::deserializer>(s: S) ->
 fn deserialize_middle_typeck_method_origin<S: std::serialization::deserializer>(s:
                                                                                     S)
    -> middle::typeck::method_origin {
-    deserialize_168(s)
+    deserialize_169(s)
 }
 /*middle::freevars::freevar_entry*/
-fn serialize_169<S: std::serialization::serializer>(s: S,
+fn serialize_170<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         middle::freevars::freevar_entry) {
     s.emit_rec(/*syntax::ast::def*//*syntax::codemap::span*/
                {||
                    {
                        s.emit_rec_field("def", 0u,
-                                        {|| serialize_163(s, v.def) });
+                                        {|| serialize_164(s, v.def) });
                        s.emit_rec_field("span", 1u,
                                         {|| serialize_19(s, v.span) })
                    }
@@ -8766,10 +8853,10 @@ fn serialize_middle_freevars_freevar_entry<S: std::serialization::serializer>(s:
                                                                                   S,
                                                                               v:
                                                                                   middle::freevars::freevar_entry) {
-    serialize_169(s, v);
+    serialize_170(s, v);
 }
 /*middle::freevars::freevar_entry*/
-fn deserialize_169<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_170<S: std::serialization::deserializer>(s: S) ->
    middle::freevars::freevar_entry {
 
     s.read_rec(
@@ -8781,7 +8868,7 @@ fn deserialize_169<S: std::serialization::deserializer>(s: S) ->
 
                {||
                    {def:
-                        s.read_rec_field("def", 0u, {|| deserialize_163(s) }),
+                        s.read_rec_field("def", 0u, {|| deserialize_164(s) }),
                     span:
                         s.read_rec_field("span", 1u,
                                          {|| deserialize_19(s) }),}
@@ -8791,19 +8878,19 @@ fn deserialize_169<S: std::serialization::deserializer>(s: S) ->
 fn deserialize_middle_freevars_freevar_entry<S: std::serialization::deserializer>(s:
                                                                                       S)
    -> middle::freevars::freevar_entry {
-    deserialize_169(s)
+    deserialize_170(s)
 }
 fn serialize_syntax_ast_def_id<S: std::serialization::serializer>(s: S,
                                                                   v:
                                                                       syntax::ast::def_id) {
-    serialize_164(s, v);
+    serialize_165(s, v);
 }
 fn deserialize_syntax_ast_def_id<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::def_id {
-    deserialize_164(s)
+    deserialize_165(s)
 }
 /*syntax::ast::inlined_item*/
-fn serialize_170<S: std::serialization::serializer>(s: S,
+fn serialize_171<S: std::serialization::serializer>(s: S,
                                                     v:
                                                         syntax::ast::inlined_item) {
     s.emit_enum("syntax::ast::inlined_item",
@@ -8817,7 +8904,7 @@ fn serialize_170<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_117(s,
+                                                                                serialize_118(s,
                                                                                               v0)
                                                                             })
                                                 }
@@ -8829,12 +8916,12 @@ fn serialize_170<S: std::serialization::serializer>(s: S,
                                                 {
                                                     s.emit_enum_variant_arg(0u,
                                                                             {||
-                                                                                serialize_164(s,
+                                                                                serialize_165(s,
                                                                                               v0)
                                                                             });
                                                     s.emit_enum_variant_arg(1u,
                                                                             {||
-                                                                                serialize_161(s,
+                                                                                serialize_162(s,
                                                                                               v1)
                                                                             })
                                                 }
@@ -8846,10 +8933,10 @@ fn serialize_170<S: std::serialization::serializer>(s: S,
 fn serialize_syntax_ast_inlined_item<S: std::serialization::serializer>(s: S,
                                                                         v:
                                                                             syntax::ast::inlined_item) {
-    serialize_170(s, v);
+    serialize_171(s, v);
 }
 /*syntax::ast::inlined_item*/
-fn deserialize_170<S: std::serialization::deserializer>(s: S) ->
+fn deserialize_171<S: std::serialization::deserializer>(s: S) ->
    syntax::ast::inlined_item {
     s.read_enum("syntax::ast::inlined_item",
                 /*@syntax::ast::item*/
@@ -8861,17 +8948,17 @@ fn deserialize_170<S: std::serialization::deserializer>(s: S) ->
                                               0u {
                                                 syntax::ast::ii_item(s.read_enum_variant_arg(0u,
                                                                                              {||
-                                                                                                 deserialize_117(s)
+                                                                                                 deserialize_118(s)
                                                                                              }))
                                               }
                                               1u {
                                                 syntax::ast::ii_method(s.read_enum_variant_arg(0u,
                                                                                                {||
-                                                                                                   deserialize_164(s)
+                                                                                                   deserialize_165(s)
                                                                                                }),
                                                                        s.read_enum_variant_arg(1u,
                                                                                                {||
-                                                                                                   deserialize_161(s)
+                                                                                                   deserialize_162(s)
                                                                                                }))
                                               }
                                             }
@@ -8881,5 +8968,5 @@ fn deserialize_170<S: std::serialization::deserializer>(s: S) ->
 fn deserialize_syntax_ast_inlined_item<S: std::serialization::deserializer>(s:
                                                                                 S)
    -> syntax::ast::inlined_item {
-    deserialize_170(s)
+    deserialize_171(s)
 }
diff --git a/src/rustc/middle/typeck.rs b/src/rustc/middle/typeck.rs
index a5e0b3f0ade..556d51564b6 100644
--- a/src/rustc/middle/typeck.rs
+++ b/src/rustc/middle/typeck.rs
@@ -319,6 +319,9 @@ fn ast_ty_to_ty(tcx: ty::ctxt, mode: mode, &&ast_ty: @ast::ty) -> ty::t {
       ast::ty_ptr(mt) {
         ty::mk_ptr(tcx, ast_mt_to_mt(tcx, mode, mt))
       }
+      ast::ty_rptr(_,_) {
+        fail "TODO: regions";
+      }
       ast::ty_tup(fields) {
         let flds = vec::map(fields, bind ast_ty_to_ty(tcx, mode, _));
         ty::mk_tup(tcx, flds)
diff --git a/src/rustc/syntax/ast.rs b/src/rustc/syntax/ast.rs
index 2f0c4bf7839..934940bba18 100644
--- a/src/rustc/syntax/ast.rs
+++ b/src/rustc/syntax/ast.rs
@@ -339,6 +339,12 @@ enum prim_ty {
     ty_bool,
 }
 
+enum region {
+    re_inferred,
+    re_named(ident),
+    re_self
+}
+
 enum ty_ {
     ty_nil,
     ty_bot, /* bottom type */
@@ -346,6 +352,7 @@ enum ty_ {
     ty_uniq(mt),
     ty_vec(mt),
     ty_ptr(mt),
+    ty_rptr(region, mt),
     ty_rec([ty_field]),
     ty_fn(proto, fn_decl),
     ty_tup([@ty]),
diff --git a/src/rustc/syntax/fold.rs b/src/rustc/syntax/fold.rs
index 42ac5ca7da6..bc9b4b79048 100644
--- a/src/rustc/syntax/fold.rs
+++ b/src/rustc/syntax/fold.rs
@@ -479,6 +479,7 @@ fn noop_fold_ty(t: ty_, fld: ast_fold) -> ty_ {
       ty_uniq(mt) {ty_uniq(fold_mt(mt, fld))}
       ty_vec(mt) {ty_vec(fold_mt(mt, fld))}
       ty_ptr(mt) {ty_ptr(fold_mt(mt, fld))}
+      ty_rptr(region, mt) {ty_rptr(region, fold_mt(mt, fld))}
       ty_rec(fields) {ty_rec(vec::map(fields) {|f| fold_field(f, fld)})}
       ty_fn(proto, decl) {ty_fn(proto, fold_fn_decl(decl, fld))}
       ty_tup(tys) {ty_tup(vec::map(tys) {|ty| fld.fold_ty(ty)})}
diff --git a/src/rustc/syntax/print/pprust.rs b/src/rustc/syntax/print/pprust.rs
index 10195ce0163..b1a07fae31c 100644
--- a/src/rustc/syntax/print/pprust.rs
+++ b/src/rustc/syntax/print/pprust.rs
@@ -332,6 +332,7 @@ fn print_type(s: ps, &&ty: @ast::ty) {
         word(s.s, "]");
       }
       ast::ty_ptr(mt) { word(s.s, "*"); print_mt(s, mt); }
+      ast::ty_rptr(region, mt) { fail "TODO"; }
       ast::ty_rec(fields) {
         word(s.s, "{");
         fn print_field(s: ps, f: ast::ty_field) {