From fdddf8f9e1d6738d42989a6d8a735dd58127e199 Mon Sep 17 00:00:00 2001 From: Niko Matsakis Date: Fri, 10 Feb 2012 06:01:32 -0800 Subject: [PATCH] put serializer into the build and encode full item paths --- Makefile.in | 1 + mk/tools.mk | 20 +++++++++++ src/comp/metadata/common.rs | 7 ++++ src/comp/metadata/csearch.rs | 10 +++++- src/comp/metadata/decoder.rs | 30 ++++++++++++++++ src/comp/metadata/encoder.rs | 64 ++++++++++++++++++++++++++++------- src/comp/middle/ast_map.rs | 14 ++++++++ src/comp/middle/ty.rs | 39 +++++++++++++++++++++ src/comp/util/ppaux.rs | 10 ++++++ src/libcore/uint.rs | 23 +++++++++++++ src/libstd/ebml.rs | 18 ++++++---- src/serializer/serializer | Bin 0 -> 294724 bytes src/serializer/serializer.rs | 22 ++++++------ src/serializer/stest.rs | 9 +++++ src/test/run-pass/qquote | Bin 0 -> 180592 bytes 15 files changed, 238 insertions(+), 29 deletions(-) create mode 100755 src/serializer/serializer create mode 100755 src/test/run-pass/qquote diff --git a/Makefile.in b/Makefile.in index 4ee65d87e82..faee8e8d863 100644 --- a/Makefile.in +++ b/Makefile.in @@ -410,6 +410,7 @@ TSREQS := \ FUZZ := $(HBIN3_H_$(CFG_HOST_TRIPLE))/fuzzer$(X) CARGO := $(HBIN3_H_$(CFG_HOST_TRIPLE))/cargo$(X) RUSTDOC := $(HBIN3_H_$(CFG_HOST_TRIPLE))/rustdoc$(X) +SERIALIZER := $(HBIN3_H_$(CFG_HOST_TRIPLE))/serializer$(X) all: rustc $(GENERATED) docs $(FUZZ) $(CARGO) $(RUSTDOC) diff --git a/mk/tools.mk b/mk/tools.mk index 0f9ebc9d090..772de00f9c2 100644 --- a/mk/tools.mk +++ b/mk/tools.mk @@ -16,6 +16,11 @@ CARGO_INPUTS := $(wildcard $(S)src/cargo/*rs) RUSTDOC_CRATE := $(S)src/rustdoc/rustdoc.rc RUSTDOC_INPUTS := $(wildcard $(S)src/rustdoc/*.rs) +# Serializer, generates serialization code +# (Should eventually move into a compiler ext) +SERIALIZER_CRATE := $(S)src/serializer/serializer.rc +SERIALIZER_INPUTS := $(wildcard $(S)src/serializer/*.rs) + # FIXME: These are only built for the host arch. Eventually we'll # have tools that need to built for other targets. define TOOLS_STAGE_N @@ -83,6 +88,21 @@ $$(HBIN$(2)_H_$(4))/rustdoc$$(X): \ @$$(call E, cp: $$@) $$(Q)cp $$< $$@ +$$(TBIN$(1)_T_$(4)_H_$(3))/serializer$$(X): \ + $$(SERIALIZER_CRATE) $$(SERIALIZER_INPUTS) \ + $$(TSREQ$(1)_T_$(4)_H_$(3)) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_CORELIB) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_STDLIB) \ + $$(TLIB$(1)_T_$(4)_H_$(3))/$$(CFG_LIBRUSTC) + @$$(call E, compile_and_link: $$@) + $$(STAGE$(1)_T_$(4)_H_$(3)) -o $$@ $$< + +$$(HBIN$(2)_H_$(4))/serializer$$(X): \ + $$(TBIN$(1)_T_$(4)_H_$(3))/serializer$$(X) \ + $$(HSREQ$(2)_$(4)) + @$$(call E, cp: $$@) + $$(Q)cp $$< $$@ + endef $(foreach host,$(CFG_TARGET_TRIPLES), \ diff --git a/src/comp/metadata/common.rs b/src/comp/metadata/common.rs index f638dfecf1f..32358794212 100644 --- a/src/comp/metadata/common.rs +++ b/src/comp/metadata/common.rs @@ -70,6 +70,13 @@ const tag_impl_iface: uint = 0x32u; // discriminator value for variants const tag_disr_val: uint = 0x34u; +// used to encode ast_map::path and ast_map::path_elt +const tag_path: uint = 0x40u; +const tag_path_len: uint = 0x41u; +const tag_path_elt_mod: uint = 0x42u; +const tag_path_elt_name: uint = 0x43u; + + // djb's cdb hashes. fn hash_node_id(&&node_id: int) -> uint { ret 177573u ^ (node_id as uint); } diff --git a/src/comp/metadata/csearch.rs b/src/comp/metadata/csearch.rs index 7d5ae7048b8..1ac86faed0d 100644 --- a/src/comp/metadata/csearch.rs +++ b/src/comp/metadata/csearch.rs @@ -2,7 +2,8 @@ import syntax::ast; import syntax::ast_util; -import middle::ty; +import middle::{ty, ast_map}; +import option::{some, none}; import driver::session; export get_symbol; @@ -13,6 +14,7 @@ export get_impls_for_mod; export get_iface_methods; export get_type; export get_impl_iface; +export get_item_path; fn get_symbol(cstore: cstore::cstore, def: ast::def_id) -> str { let cdata = cstore::get_crate_data(cstore, def.crate).data; @@ -55,6 +57,12 @@ fn resolve_path(cstore: cstore::cstore, cnum: ast::crate_num, ret result; } +fn get_item_path(tcx: ty::ctxt, def: ast::def_id) -> ast_map::path { + let cstore = tcx.sess.cstore; + let cdata = cstore::get_crate_data(cstore, def.crate); + ret decoder::get_item_path(cdata, def.node); +} + fn get_enum_variants(tcx: ty::ctxt, def: ast::def_id) -> [ty::variant_info] { let cstore = tcx.sess.cstore; let cdata = cstore::get_crate_data(cstore, def.crate); diff --git a/src/comp/metadata/decoder.rs b/src/comp/metadata/decoder.rs index 163522ea4c7..ccc0e3bfa2a 100644 --- a/src/comp/metadata/decoder.rs +++ b/src/comp/metadata/decoder.rs @@ -6,6 +6,7 @@ import syntax::{ast, ast_util}; import driver::session::session; import front::attr; import middle::ty; +import middle::ast_map; import common::*; import tydecode::{parse_ty_data, parse_def_id, parse_bounds_data}; import syntax::print::pprust; @@ -28,6 +29,7 @@ export get_crate_hash; export get_impls_for_mod; export get_iface_methods; export get_crate_module_paths; +export get_item_path; // A function that takes a def_id relative to the crate being searched and // returns a def_id relative to the compilation environment, i.e. if we hit a @@ -176,6 +178,30 @@ fn resolve_path(path: [ast::ident], data: @[u8]) -> [ast::def_id] { ret result; } +fn item_path(item_doc: ebml::doc) -> ast_map::path { + let path_doc = ebml::get_doc(item_doc, tag_path); + + let len_doc = ebml::get_doc(path_doc, tag_path_len); + let len = ebml::doc_as_uint(len_doc); + + let result = []; + vec::reserve(result, len); + + ebml::docs(path_doc) {|tag, elt_doc| + if tag == tag_path_elt_mod { + let str = ebml::doc_str(elt_doc); + result += [ast_map::path_mod(str)]; + } else if tag == tag_path_elt_name { + let str = ebml::doc_str(elt_doc); + result += [ast_map::path_name(str)]; + } else { + // ignore tag_path_len element + } + } + + ret result; +} + fn item_name(item: ebml::doc) -> ast::ident { let name = ebml::get_doc(item, tag_paths_data_name); str::from_bytes(ebml::doc_data(name)) @@ -234,6 +260,10 @@ fn get_symbol(data: @[u8], id: ast::node_id) -> str { ret item_symbol(lookup_item(id, data)); } +fn get_item_path(cdata: cmd, id: ast::node_id) -> ast_map::path { + item_path(lookup_item(id, cdata.data)) +} + fn get_enum_variants(cdata: cmd, id: ast::node_id, tcx: ty::ctxt) -> [ty::variant_info] { let data = cdata.data; diff --git a/src/comp/metadata/encoder.rs b/src/comp/metadata/encoder.rs index 9395558332f..89b188f92a4 100644 --- a/src/comp/metadata/encoder.rs +++ b/src/comp/metadata/encoder.rs @@ -10,6 +10,7 @@ import common::*; import middle::trans::common::crate_ctxt; import middle::ty; import middle::ty::node_id_to_type; +import middle::ast_map; import front::attr; import driver::session::session; @@ -233,8 +234,9 @@ fn encode_enum_id(ebml_w: ebml::writer, id: def_id) { } fn encode_enum_variant_info(ecx: @encode_ctxt, ebml_w: ebml::writer, - id: node_id, variants: [variant], - &index: [entry], ty_params: [ty_param]) { + id: node_id, variants: [variant], + path: ast_map::path, &index: [entry], + ty_params: [ty_param]) { let disr_val = 0; let i = 0; let vi = ty::enum_variants(ecx.ccx.tcx, {crate: local_crate, node: id}); @@ -256,14 +258,38 @@ fn encode_enum_variant_info(ecx: @encode_ctxt, ebml_w: ebml::writer, disr_val = vi[i].disr_val; } encode_type_param_bounds(ebml_w, ecx, ty_params); + encode_path(ebml_w, path, ast_map::path_name(variant.node.name)); ebml::end_tag(ebml_w); disr_val += 1; i += 1; } } +fn encode_path(ebml_w: ebml::writer, + path: ast_map::path, + name: ast_map::path_elt) { + fn encode_path_elt(ebml_w: ebml::writer, elt: ast_map::path_elt) { + let (tag, name) = alt elt { + ast_map::path_mod(name) { (tag_path_elt_mod, name) } + ast_map::path_name(name) { (tag_path_elt_name, name) } + }; + + ebml_w.wr_tag(tag) {|| + ebml_w.wr_str(name) + } + } + + ebml_w.wr_tag(tag_path) {|| + ebml_w.wr_tag(tag_path_len) {|| + ebml_w.wr_uint(vec::len(path) + 1u); + } + vec::iter(path) {|pe| encode_path_elt(ebml_w, pe); } + encode_path_elt(ebml_w, name); + } +} + fn encode_info_for_mod(ecx: @encode_ctxt, ebml_w: ebml::writer, md: _mod, - id: node_id, name: ident) { + id: node_id, path: ast_map::path, name: ident) { ebml::start_tag(ebml_w, tag_items_data_item); encode_def_id(ebml_w, local_def(id)); encode_family(ebml_w, 'm' as u8); @@ -281,11 +307,12 @@ fn encode_info_for_mod(ecx: @encode_ctxt, ebml_w: ebml::writer, md: _mod, _ { ecx.ccx.tcx.sess.bug("encode_info_for_mod: \ undocumented invariant"); } } + encode_path(ebml_w, path, ast_map::path_mod(name)); ebml::end_tag(ebml_w); } fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, - &index: [entry]) { + &index: [entry], path: ast_map::path) { let tcx = ecx.ccx.tcx; alt item.node { item_const(_, _) { @@ -294,6 +321,7 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, encode_family(ebml_w, 'c' as u8); encode_type(ecx, ebml_w, node_id_to_type(tcx, item.id)); encode_symbol(ecx, ebml_w, item.id); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } item_fn(decl, tps, _) { @@ -308,16 +336,18 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, encode_type_param_bounds(ebml_w, ecx, tps); encode_type(ecx, ebml_w, node_id_to_type(tcx, item.id)); encode_symbol(ecx, ebml_w, item.id); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } item_mod(m) { - encode_info_for_mod(ecx, ebml_w, m, item.id, item.ident); + encode_info_for_mod(ecx, ebml_w, m, item.id, path, item.ident); } item_native_mod(_) { ebml::start_tag(ebml_w, tag_items_data_item); encode_def_id(ebml_w, local_def(item.id)); encode_family(ebml_w, 'n' as u8); encode_name(ebml_w, item.ident); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } item_ty(_, tps) { @@ -327,6 +357,7 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, encode_type_param_bounds(ebml_w, ecx, tps); encode_type(ecx, ebml_w, node_id_to_type(tcx, item.id)); encode_name(ebml_w, item.ident); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } item_enum(variants, tps) { @@ -339,8 +370,10 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, for v: variant in variants { encode_variant_id(ebml_w, local_def(v.node.id)); } + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); - encode_enum_variant_info(ecx, ebml_w, item.id, variants, index, tps); + encode_enum_variant_info(ecx, ebml_w, item.id, variants, + path, index, tps); } item_class(_,_,_,_,_) { fail "encode: implement item_class"; @@ -355,6 +388,7 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, encode_type(ecx, ebml_w, ty::ty_fn_ret(fn_ty)); encode_name(ebml_w, item.ident); encode_symbol(ecx, ebml_w, item.id); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); index += [{val: ctor_id, pos: ebml_w.writer.tell()}]; @@ -364,6 +398,7 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, encode_type_param_bounds(ebml_w, ecx, tps); encode_type(ecx, ebml_w, fn_ty); encode_symbol(ecx, ebml_w, ctor_id); + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } item_impl(tps, ifce, _, methods) { @@ -388,8 +423,10 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, } _ {} } + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); + let impl_path = path + [ast_map::path_name(item.ident)]; for m in methods { index += [{val: m.id, pos: ebml_w.writer.tell()}]; ebml::start_tag(ebml_w, tag_items_data_item); @@ -400,6 +437,7 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, node_id_to_type(tcx, m.id)); encode_name(ebml_w, m.ident); encode_symbol(ecx, ebml_w, m.id); + encode_path(ebml_w, impl_path, ast_map::path_name(m.ident)); ebml::end_tag(ebml_w); } } @@ -419,13 +457,14 @@ fn encode_info_for_item(ecx: @encode_ctxt, ebml_w: ebml::writer, item: @item, ebml::end_tag(ebml_w); i += 1u; } + encode_path(ebml_w, path, ast_map::path_name(item.ident)); ebml::end_tag(ebml_w); } } } fn encode_info_for_native_item(ecx: @encode_ctxt, ebml_w: ebml::writer, - nitem: @native_item) { + nitem: @native_item, path: ast_map::path) { ebml::start_tag(ebml_w, tag_items_data_item); alt nitem.node { native_item_fn(fn_decl, tps) { @@ -439,6 +478,7 @@ fn encode_info_for_native_item(ecx: @encode_ctxt, ebml_w: ebml::writer, encode_type_param_bounds(ebml_w, ecx, tps); encode_type(ecx, ebml_w, node_id_to_type(ecx.ccx.tcx, nitem.id)); encode_symbol(ecx, ebml_w, nitem.id); + encode_path(ebml_w, path, ast_map::path_name(nitem.ident)); } } ebml::end_tag(ebml_w); @@ -449,16 +489,16 @@ fn encode_info_for_items(ecx: @encode_ctxt, ebml_w: ebml::writer, let index: [entry] = []; ebml::start_tag(ebml_w, tag_items_data); index += [{val: crate_node_id, pos: ebml_w.writer.tell()}]; - encode_info_for_mod(ecx, ebml_w, crate_mod, crate_node_id, ""); + encode_info_for_mod(ecx, ebml_w, crate_mod, crate_node_id, [], ""); ecx.ccx.ast_map.items {|key, val| alt val { - middle::ast_map::node_item(i, _) { + middle::ast_map::node_item(i, path) { index += [{val: key, pos: ebml_w.writer.tell()}]; - encode_info_for_item(ecx, ebml_w, i, index); + encode_info_for_item(ecx, ebml_w, i, index, *path); } - middle::ast_map::node_native_item(i, _) { + middle::ast_map::node_native_item(i, path) { index += [{val: key, pos: ebml_w.writer.tell()}]; - encode_info_for_native_item(ecx, ebml_w, i); + encode_info_for_native_item(ecx, ebml_w, i, *path); } _ { } } diff --git a/src/comp/middle/ast_map.rs b/src/comp/middle/ast_map.rs index ca3885d89d7..1504f5f738e 100644 --- a/src/comp/middle/ast_map.rs +++ b/src/comp/middle/ast_map.rs @@ -6,6 +6,20 @@ import syntax::{visit, codemap}; enum path_elt { path_mod(str), path_name(str) } type path = [path_elt]; +fn path_to_str_with_sep(p: path, sep: str) -> str { + let strs = vec::map(p) {|e| + alt e { + path_mod(s) { s } + path_name(s) { s } + } + }; + str::connect(strs, sep) +} + +fn path_to_str(p: path) -> str { + path_to_str_with_sep(p, "::") +} + enum ast_node { node_item(@item, @path), node_native_item(@native_item, @path), diff --git a/src/comp/middle/ty.rs b/src/comp/middle/ty.rs index 5c6e956508f..019ba856e98 100644 --- a/src/comp/middle/ty.rs +++ b/src/comp/middle/ty.rs @@ -128,6 +128,7 @@ export ck_uniq; export param_bound, param_bounds, bound_copy, bound_send, bound_iface; export param_bounds_to_kind; export default_arg_mode_for_ty; +export item_path; // Data types @@ -2371,6 +2372,44 @@ fn substd_enum_variants(cx: ctxt, id: ast::def_id, tps: [ty::t]) } } +fn item_path(cx: ctxt, id: ast::def_id) -> ast_map::path { + if id.crate != ast::local_crate { + csearch::get_item_path(cx, id) + } else { + let node = cx.items.get(id.node); + alt node { + ast_map::node_item(item, path) { + let item_elt = alt item.node { + item_mod(_) | item_native_mod(_) { + ast_map::path_mod(item.ident) + } + _ { + ast_map::path_name(item.ident) + } + }; + *path + [item_elt] + } + + ast_map::node_native_item(nitem, path) { + *path + [ast_map::path_name(nitem.ident)] + } + + ast_map::node_method(method, path) { + *path + [ast_map::path_name(method.ident)] + } + + ast_map::node_variant(variant, _, path) { + vec::init(*path) + [ast_map::path_name(variant.node.name)] + } + + ast_map::node_expr(_) | ast_map::node_arg(_, _) | + ast_map::node_local(_) | ast_map::node_res_ctor(_) { + cx.sess.bug(#fmt["cannot find item_path for node %?", node]); + } + } + } +} + fn enum_variants(cx: ctxt, id: ast::def_id) -> @[variant_info] { alt cx.enum_var_cache.find(id) { some(variants) { ret variants; } diff --git a/src/comp/util/ppaux.rs b/src/comp/util/ppaux.rs index 985c710c659..24337878a5c 100644 --- a/src/comp/util/ppaux.rs +++ b/src/comp/util/ppaux.rs @@ -110,6 +110,16 @@ fn ty_to_str(cx: ctxt, typ: t) -> str { ty_param(id, _) { "'" + str::from_bytes([('a' as u8) + (id as u8)]) } + ty_enum(did, tps) { + let path = ty::item_path(cx, did); + let base = ast_map::path_to_str(path); + if vec::is_empty(tps) { + base + } else { + let tps_strs = vec::map(tps) {|t| ty_to_str(cx, t) }; + #fmt["%s<%s>", base, str::connect(tps_strs, ",")] + } + } _ { ty_to_short_str(cx, typ) } } } diff --git a/src/libcore/uint.rs b/src/libcore/uint.rs index 2112399ba80..5799211865f 100644 --- a/src/libcore/uint.rs +++ b/src/libcore/uint.rs @@ -20,6 +20,20 @@ This is 2^wordsize - 1 */ const max_value: uint = 0u - 1u; +/* +Function: max +*/ +fn max(x: uint, y: uint) -> uint { + if x > y { x } else { y } +} + +/* +Function: min +*/ +fn min(x: uint, y: uint) -> uint { + if x < y { x } else { y } +} + /* Function: add */ pure fn add(x: uint, y: uint) -> uint { ret x + y; } @@ -252,6 +266,15 @@ Convert to a string */ fn str(i: uint) -> str { ret to_str(i, 10u); } +/* +Function: compl + +Computes the bitwise complement. +*/ +fn compl(i: uint) -> uint { + uint::max_value ^ i +} + #[cfg(test)] mod tests { diff --git a/src/libstd/ebml.rs b/src/libstd/ebml.rs index c4b07086acd..bee73814580 100644 --- a/src/libstd/ebml.rs +++ b/src/libstd/ebml.rs @@ -97,6 +97,8 @@ fn tagged_docs(d: doc, tg: uint, it: fn(doc)) { fn doc_data(d: doc) -> [u8] { ret vec::slice::(*d.data, d.start, d.end); } +fn doc_str(d: doc) -> str { ret str::from_bytes(doc_data(d)); } + fn be_uint_from_bytes(data: @[u8], start: uint, size: uint) -> uint { let sz = size; assert (sz <= 4u); @@ -136,11 +138,11 @@ fn write_sized_vint(w: io::writer, n: uint, size: uint) { w.write(buf); } -fn write_vint(w: io::writer, n: uint) { - if n < 0x7fu { write_sized_vint(w, n, 1u); ret; } - if n < 0x4000u { write_sized_vint(w, n, 2u); ret; } - if n < 0x200000u { write_sized_vint(w, n, 3u); ret; } - if n < 0x10000000u { write_sized_vint(w, n, 4u); ret; } +fn write_vint(w: io::writer, n: u64) { + if n < 0x7f_u64 { write_sized_vint(w, n, 1u); ret; } + if n < 0x4000_u64 { write_sized_vint(w, n, 2u); ret; } + if n < 0x200000_u64 { write_sized_vint(w, n, 3u); ret; } + if n < 0x10000000_u64 { write_sized_vint(w, n, 4u); ret; } #error("vint to write too big"); fail; } @@ -177,7 +179,11 @@ impl writer_util for writer { end_tag(self); } - fn wr_uint(id: uint) { + fn wr_uint(id: u64) { + write_vint(self.writer, id); + } + + fn wr_int(id: uint) { write_vint(self.writer, id); } diff --git a/src/serializer/serializer b/src/serializer/serializer new file mode 100755 index 0000000000000000000000000000000000000000..50ff84ee0bcfc2359b36d0a4471a0f3f9a955aa7 GIT binary patch literal 294724 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 Dh=a;l literal 0 HcmV?d00001 diff --git a/src/serializer/serializer.rs b/src/serializer/serializer.rs index f8c4349a7ce..80b51ba78a7 100644 --- a/src/serializer/serializer.rs +++ b/src/serializer/serializer.rs @@ -106,12 +106,8 @@ impl serialize_ctx for serialize_ctx { ret tps_map; } - fn path(mod_: [str], id: str) -> str { - str::connect(mod_ + [id], "::") - } - - fn ident(mod_: [str], id: str) -> str { - str::connect(mod_ + [id], "_") + fn ident(base_path: ast_map::path, id: str) -> str { + #fmt["%s_%s", ast_map::path_to_str_with_sep(base_path, "_"), id] } fn instantiate(id: ast::def_id, args: [ty::t]) -> ty::t { @@ -134,7 +130,11 @@ impl serialize_ctx for serialize_ctx { } fn blk(stmts: [ast_stmt]) -> ast_blk { - "{" + str::connect(stmts, ";") + "}" + if vec::is_empty(stmts) { + "" + } else { + "{" + str::connect(stmts, ";") + "}" + } } fn blk_expr(stmts: [ast_stmt]) -> ast_expr { @@ -159,6 +159,7 @@ impl serialize_ctx for serialize_ctx { // in case of recursive calls: let id = self.tyfns.size(); let ty0_str = ppaux::ty_to_str(self.tcx, ty0); + #debug["ty0_str = %s / ty0 = %?", ty0_str, ty0]; let name = #fmt["serialize_%u /*%s*/", id, ty0_str]; self.tyfns.insert(ty0, name); let v = "v"; @@ -221,11 +222,11 @@ impl serialize_ctx for serialize_ctx { fn serialize_enum(v: ast_expr, id: ast::def_id, tps: [ty::t]) -> ast_expr { - let path = []; let variants = ty::substd_enum_variants(self.tcx, id, tps); let arms = vec::map(variants) {|variant| - let v_path = self.path(path, variant.name); + let item_path = ty::item_path(self.tcx, variant.id); + let v_path = ast_map::path_to_str(item_path); let n_args = vec::len(variant.args); let (v_pat, stmts) = { if n_args == 0u { @@ -235,7 +236,8 @@ impl serialize_ctx for serialize_ctx { } }; - let v_const = #fmt["at_%s", self.ident(path, variant.name)]; + let v_ident = ast_map::path_to_str_with_sep(item_path, "_"); + let v_const = #fmt["at_%s", v_ident]; #fmt["%s { \ start_variant(cx, %s); \ diff --git a/src/serializer/stest.rs b/src/serializer/stest.rs index c7161e07a27..b1d255f4939 100644 --- a/src/serializer/stest.rs +++ b/src/serializer/stest.rs @@ -28,4 +28,13 @@ type test5 = { type test6 = option; +mod test7 { + enum testa { + } + + enum testb { + t4_a(@testa), t4_b(@testb) + } +} + fn main() {} \ No newline at end of file diff --git a/src/test/run-pass/qquote b/src/test/run-pass/qquote new file mode 100755 index 0000000000000000000000000000000000000000..0c4c440cafac9d4a86984b2b1e6a7fc3b1c6da76 GIT binary patch literal 180592 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πvXxBkyHS0hWET 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

TMne&sZ!mj_#kO}WDZ zDq?vYmD3cLXF`bOfl*FVT%P1eY)Wsc&U`$sfxwd$IZf$J)s~M(B@j~e<>MI!VtJU6 z(-fBn6^Tu8dAL9<&j#c)#Z6VAKUIaa6tHmp-0^iXKVR47)Xb(oRhxe9${_GeT252k zRBifGwdv>Eb8u5t=udSoKi_$Skg7sIUmOveszQIN3jKWD6GF-dzRDq%FKKdWwkTR? z)r?J5p`R~O;HEmBpD#obn{tOQJBUryrk^h;5}V?t`kz150sX1k^z)Sg$x?mL&!fM@ zrd;Q-UdIMfwHZj&W+2re13V)GH&um!REG@kWJ?Gsy{Re;q^dB$lO}Le9WuZZBgCdU zWPqnZ5}VSSs?7iom>}>ZMov@QREG?tI%I%vKfq0O$Uv$#13cpZfo~(^)NCaIolWzk~!k}Svj6N1o@@}v8kaZm>Oz= zsTLVbWxXcVB5P9POAXH=w6YqWJm8e)403AbqK2CxJrf~&H~479Xti{3jjx6te^3iC zw;)`R&*Ko*)pzrF*g~G3FgKsbkS5n6$tp=c>o7Ah`)bcDbzCZ%3C;^b(+@@FGSu{& z(V;6=r|+p@F4Qb@F58=ZU z)OK9D7b=Nv+q}&$3TX z<}^8W>2XSwb&npWL|J#}u_UtXpCL^o>;63161v%VBb$yKJN(#^<=Uv@5VGvhk!v%c zTnV#o1(Yjc){TI2CCs`FP}YRGcOl7^G{^oymSp+wT5`zVU1}S!Lt=SiL6bXup-t@` z!5e+)4NqjJ6Amp`a$JGcyu^CJPT$Q$wl_&_VpZp8~=8h#2fsI21ruHb2 jm_s)wF(s70h;`Q_5zr4~=5{4%aWHqtzD)e=vhjZb=+(k) literal 0 HcmV?d00001