From f23674394f2e77b7aa4686a5ae9f2f60d6faa428 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 3 Aug 2012 19:49:12 -0700 Subject: rustc: Merge fn& and fn in favor of fn&. This is a step on the way to moving the function "proto" sigil out front. --- src/rustc/metadata/tydecode.rs | 1 - src/rustc/metadata/tyencode.rs | 1 - src/rustc/middle/borrowck/categorization.rs | 2 +- src/rustc/middle/borrowck/check_loans.rs | 2 +- src/rustc/middle/capture.rs | 2 +- src/rustc/middle/kind.rs | 2 +- src/rustc/middle/trans/closure.rs | 5 ++--- src/rustc/middle/trans/foreign.rs | 2 +- src/rustc/middle/trans/reflect.rs | 1 - src/rustc/middle/trans/shape.rs | 3 +-- src/rustc/middle/trans/type_use.rs | 2 +- src/rustc/middle/ty.rs | 3 +-- src/rustc/middle/typeck/check.rs | 2 +- src/rustc/middle/typeck/collect.rs | 4 ++-- src/rustc/middle/typeck/infer.rs | 6 +++--- 15 files changed, 16 insertions(+), 22 deletions(-) (limited to 'src/rustc') diff --git a/src/rustc/metadata/tydecode.rs b/src/rustc/metadata/tydecode.rs index df7bea1bd0e..ad3f09f8086 100644 --- a/src/rustc/metadata/tydecode.rs +++ b/src/rustc/metadata/tydecode.rs @@ -89,7 +89,6 @@ fn parse_proto(c: char) -> ast::proto { alt c { '~' { ast::proto_uniq } '@' { ast::proto_box } - '*' { ast::proto_any } '&' { ast::proto_block } 'n' { ast::proto_bare } _ { fail ~"illegal fn type kind " + str::from_char(c); } diff --git a/src/rustc/metadata/tyencode.rs b/src/rustc/metadata/tyencode.rs index 02a6b0f826a..01fc90cc19d 100644 --- a/src/rustc/metadata/tyencode.rs +++ b/src/rustc/metadata/tyencode.rs @@ -311,7 +311,6 @@ fn enc_proto(w: io::writer, proto: proto) { proto_uniq { w.write_str(&"f~"); } proto_box { w.write_str(&"f@"); } proto_block { w.write_str(~"f&"); } - proto_any { w.write_str(&"f*"); } proto_bare { w.write_str(&"fn"); } } } diff --git a/src/rustc/middle/borrowck/categorization.rs b/src/rustc/middle/borrowck/categorization.rs index ea362e1dfac..f2516a30bca 100644 --- a/src/rustc/middle/borrowck/categorization.rs +++ b/src/rustc/middle/borrowck/categorization.rs @@ -244,7 +244,7 @@ impl public_methods for borrowck_ctxt { let ty = ty::node_id_to_type(self.tcx, fn_node_id); let proto = ty::ty_fn_proto(ty); alt proto { - ast::proto_any | ast::proto_block { + ast::proto_block { let upcmt = self.cat_def(id, span, expr_ty, *inner); @{id:id, span:span, cat:cat_stack_upvar(upcmt), lp:upcmt.lp, diff --git a/src/rustc/middle/borrowck/check_loans.rs b/src/rustc/middle/borrowck/check_loans.rs index 4fa149b931b..022bdcebfb1 100644 --- a/src/rustc/middle/borrowck/check_loans.rs +++ b/src/rustc/middle/borrowck/check_loans.rs @@ -220,7 +220,7 @@ impl methods for check_loan_ctxt { let fn_ty = ty::node_id_to_type(self.tcx(), id); let proto = ty::ty_fn_proto(fn_ty); alt proto { - ast::proto_block | ast::proto_any {true} + ast::proto_block {true} ast::proto_bare | ast::proto_uniq | ast::proto_box {false} } } diff --git a/src/rustc/middle/capture.rs b/src/rustc/middle/capture.rs index 2a08018ebba..dcb7a70ab50 100644 --- a/src/rustc/middle/capture.rs +++ b/src/rustc/middle/capture.rs @@ -102,7 +102,7 @@ fn compute_capture_vars(tcx: ty::ctxt, // named and add that let implicit_mode = alt fn_proto { - ast::proto_any | ast::proto_block { cap_ref } + ast::proto_block { cap_ref } ast::proto_bare | ast::proto_box | ast::proto_uniq { cap_copy } }; diff --git a/src/rustc/middle/kind.rs b/src/rustc/middle/kind.rs index dd83b01fbe0..263af391a93 100644 --- a/src/rustc/middle/kind.rs +++ b/src/rustc/middle/kind.rs @@ -148,7 +148,7 @@ fn with_appropriate_checker(cx: ctx, id: node_id, b: fn(check_fn)) { proto_uniq { b(check_for_uniq) } proto_box { b(check_for_box) } proto_bare { b(check_for_bare) } - proto_any | proto_block { b(check_for_block) } + proto_block { b(check_for_block) } } } diff --git a/src/rustc/middle/trans/closure.rs b/src/rustc/middle/trans/closure.rs index 804ee5ba83c..7204ba67380 100644 --- a/src/rustc/middle/trans/closure.rs +++ b/src/rustc/middle/trans/closure.rs @@ -388,7 +388,7 @@ fn trans_expr_fn(bcx: block, }; let {bcx: bcx, val: closure} = alt proto { - ast::proto_any | ast::proto_block { trans_closure_env(ty::ck_block) } + ast::proto_block { trans_closure_env(ty::ck_block) } ast::proto_box { trans_closure_env(ty::ck_box) } ast::proto_uniq { trans_closure_env(ty::ck_uniq) } ast::proto_bare { @@ -423,8 +423,7 @@ fn make_fn_glue( return alt ty::get(t).struct { ty::ty_fn({proto: ast::proto_bare, _}) | - ty::ty_fn({proto: ast::proto_block, _}) | - ty::ty_fn({proto: ast::proto_any, _}) { bcx } + ty::ty_fn({proto: ast::proto_block, _}) { bcx } ty::ty_fn({proto: ast::proto_uniq, _}) { fn_env(ty::ck_uniq) } ty::ty_fn({proto: ast::proto_box, _}) { fn_env(ty::ck_box) } _ { fail ~"make_fn_glue invoked on non-function type" } diff --git a/src/rustc/middle/trans/foreign.rs b/src/rustc/middle/trans/foreign.rs index 129e737bb29..ceca9aa2ef4 100644 --- a/src/rustc/middle/trans/foreign.rs +++ b/src/rustc/middle/trans/foreign.rs @@ -968,7 +968,7 @@ fn trans_intrinsic(ccx: @crate_ctxt, decl: ValueRef, item: @ast::foreign_item, let frameaddress_val = Call(bcx, frameaddress, ~[C_i32(0i32)]); let fty = ty::mk_fn(bcx.tcx(), { purity: ast::impure_fn, - proto: ast::proto_any, + proto: ast::proto_block, inputs: ~[{ mode: ast::expl(ast::by_val), ty: ty::mk_imm_ptr( diff --git a/src/rustc/middle/trans/reflect.rs b/src/rustc/middle/trans/reflect.rs index 5b833a91538..f83d4a2ccc6 100644 --- a/src/rustc/middle/trans/reflect.rs +++ b/src/rustc/middle/trans/reflect.rs @@ -186,7 +186,6 @@ impl methods for reflector { }; let protoval = alt fty.proto { ast::proto_bare { 0u } - ast::proto_any { 1u } ast::proto_uniq { 2u } ast::proto_box { 3u } ast::proto_block { 4u } diff --git a/src/rustc/middle/trans/shape.rs b/src/rustc/middle/trans/shape.rs index 11310afd0ff..1e25501da6c 100644 --- a/src/rustc/middle/trans/shape.rs +++ b/src/rustc/middle/trans/shape.rs @@ -354,8 +354,7 @@ fn shape_of(ccx: @crate_ctxt, t: ty::t) -> ~[u8] { } ty::ty_fn({proto: ast::proto_box, _}) { ~[shape_box_fn] } ty::ty_fn({proto: ast::proto_uniq, _}) { ~[shape_uniq_fn] } - ty::ty_fn({proto: ast::proto_block, _}) | - ty::ty_fn({proto: ast::proto_any, _}) { ~[shape_stack_fn] } + ty::ty_fn({proto: ast::proto_block, _}) { ~[shape_stack_fn] } ty::ty_fn({proto: ast::proto_bare, _}) { ~[shape_bare_fn] } ty::ty_opaque_closure_ptr(_) { ~[shape_opaque_closure_ptr] } ty::ty_var(_) | ty::ty_var_integral(_) | ty::ty_self { diff --git a/src/rustc/middle/trans/type_use.rs b/src/rustc/middle/trans/type_use.rs index 0f9393831ac..fd21d227632 100644 --- a/src/rustc/middle/trans/type_use.rs +++ b/src/rustc/middle/trans/type_use.rs @@ -192,7 +192,7 @@ fn mark_for_expr(cx: ctx, e: @expr) { } expr_fn(*) | expr_fn_block(*) { alt ty::ty_fn_proto(ty::expr_ty(cx.ccx.tcx, e)) { - proto_bare | proto_any | proto_uniq {} + proto_bare | proto_uniq {} proto_box | proto_block { for vec::each(*freevars::get_freevars(cx.ccx.tcx, e.id)) |fv| { let node_id = ast_util::def_id_of_def(fv.def).node; diff --git a/src/rustc/middle/ty.rs b/src/rustc/middle/ty.rs index 29dbccc43f5..af05c3cfcbf 100644 --- a/src/rustc/middle/ty.rs +++ b/src/rustc/middle/ty.rs @@ -1291,7 +1291,7 @@ fn type_needs_drop(cx: ctxt, ty: t) -> bool { } ty_fn(fty) { alt fty.proto { - proto_bare | proto_any | proto_block { false } + proto_bare | proto_block { false } _ { true } } } @@ -1533,7 +1533,6 @@ pure fn kind_is_owned(k: kind) -> bool { fn proto_kind(p: proto) -> kind { alt p { - ast::proto_any { kind_noncopyable() } ast::proto_block { kind_noncopyable() } ast::proto_box { kind_safe_for_default_mode() | kind_owned() } ast::proto_uniq { kind_send_copy() | kind_owned() } diff --git a/src/rustc/middle/typeck/check.rs b/src/rustc/middle/typeck/check.rs index 1297a39c520..b362b00c55b 100644 --- a/src/rustc/middle/typeck/check.rs +++ b/src/rustc/middle/typeck/check.rs @@ -2396,7 +2396,7 @@ fn check_intrinsic_type(ccx: @crate_ctxt, it: @ast::foreign_item) { ~"frame_address" { let fty = ty::mk_fn(ccx.tcx, { purity: ast::impure_fn, - proto: ast::proto_any, + proto: ast::proto_block, inputs: ~[{ mode: ast::expl(ast::by_val), ty: ty::mk_imm_ptr( diff --git a/src/rustc/middle/typeck/collect.rs b/src/rustc/middle/typeck/collect.rs index e80a2c8070a..2a357decd2e 100644 --- a/src/rustc/middle/typeck/collect.rs +++ b/src/rustc/middle/typeck/collect.rs @@ -395,7 +395,7 @@ fn convert(ccx: @crate_ctxt, it: @ast::item) { tps: ty::ty_params_to_tys(tcx, tps)}); let t_ctor = ty::mk_fn( tcx, {purity: ast::impure_fn, - proto: ast::proto_any, + proto: ast::proto_block, inputs: t_args, output: t_res, ret_style: ast::return_val}); @@ -410,7 +410,7 @@ fn convert(ccx: @crate_ctxt, it: @ast::item) { // Write the dtor type let t_dtor = ty::mk_fn( tcx, - ty_of_fn_decl(ccx, type_rscope(rp), ast::proto_any, + ty_of_fn_decl(ccx, type_rscope(rp), ast::proto_block, ast_util::dtor_dec(), none)); write_ty_to_tcx(tcx, dtor.node.id, t_dtor); tcx.tcache.insert(local_def(dtor.node.id), diff --git a/src/rustc/middle/typeck/infer.rs b/src/rustc/middle/typeck/infer.rs index b1ad11327a7..4dec95eee30 100644 --- a/src/rustc/middle/typeck/infer.rs +++ b/src/rustc/middle/typeck/infer.rs @@ -2120,7 +2120,7 @@ impl of combine for lub { } else if p1 == p2 { ok(p1) } else { - ok(ast::proto_any) + ok(ast::proto_block) } } @@ -2314,9 +2314,9 @@ impl of combine for glb { } fn protos(p1: ast::proto, p2: ast::proto) -> cres { - if p1 == ast::proto_any { + if p1 == ast::proto_block { ok(p2) - } else if p2 == ast::proto_any { + } else if p2 == ast::proto_block { ok(p1) } else if p1 == p2 { ok(p1) -- cgit 1.4.1-3-g733a5