Skip to content

Commit 92da064

Browse files
committed
---
yaml --- r: 15668 b: refs/heads/try c: 582c717 h: refs/heads/master v: v3
1 parent dfc67c5 commit 92da064

File tree

4 files changed

+6
-17
lines changed

4 files changed

+6
-17
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
refs/heads/master: 61b1875c16de39c166b0f4d54bba19f9c6777d1a
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
5-
refs/heads/try: dfc81dfa90d16243f1f3ed556868d53107ee3227
5+
refs/heads/try: 582c71731d57531605a2c0b470ba9d803ff19d89
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105

branches/try/src/rustc/middle/trans/common.rs

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -680,25 +680,14 @@ fn T_opaque_cbox_ptr(cx: @crate_ctxt) -> TypeRef {
680680
ret T_opaque_box_ptr(cx);
681681
}
682682

683-
fn T_enum_variant(cx: @crate_ctxt) -> TypeRef {
683+
fn T_enum_discrim(cx: @crate_ctxt) -> TypeRef {
684684
ret cx.int_type;
685685
}
686686

687-
fn T_enum(cx: @crate_ctxt, size: uint) -> TypeRef {
688-
let s = "enum_" + uint::to_str(size, 10u);
689-
alt name_has_type(cx.tn, s) { some(t) { ret t; } _ {} }
690-
let t =
691-
if size == 0u {
692-
T_struct([T_enum_variant(cx)])
693-
} else { T_struct([T_enum_variant(cx), T_array(T_i8(), size)]) };
694-
associate_type(cx.tn, s, t);
695-
ret t;
696-
}
697-
698687
fn T_opaque_enum(cx: @crate_ctxt) -> TypeRef {
699688
let s = "opaque_enum";
700689
alt name_has_type(cx.tn, s) { some(t) { ret t; } _ {} }
701-
let t = T_struct([T_enum_variant(cx), T_i8()]);
690+
let t = T_struct([T_enum_discrim(cx), T_i8()]);
702691
associate_type(cx.tn, s, t);
703692
ret t;
704693
}

branches/try/src/rustc/middle/trans/shape.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ fn compute_static_enum_size(ccx: @crate_ctxt, largest_variants: [uint],
200200
// FIXME (issue #792): This is wrong. If the enum starts with an 8 byte
201201
// aligned quantity, we don't align it.
202202
if vec::len(*variants) > 1u {
203-
let variant_t = T_enum_variant(ccx);
203+
let variant_t = T_enum_discrim(ccx);
204204
max_size += llsize_of_real(ccx, variant_t) as u16;
205205
let align = llalign_of_pref(ccx, variant_t) as u8;
206206
if max_align < align { max_align = align; }

branches/try/src/rustc/middle/trans/type_of.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,10 +158,10 @@ fn type_of_enum(cx: @crate_ctxt, did: ast::def_id, t: ty::t)
158158
let degen = (*ty::enum_variants(cx.tcx, did)).len() == 1u;
159159
let size = shape::static_size_of_enum(cx, t);
160160
if !degen {
161-
[T_enum_variant(cx), T_array(T_i8(), size)]
161+
[T_enum_discrim(cx), T_array(T_i8(), size)]
162162
}
163163
else if size == 0u {
164-
[T_enum_variant(cx)]
164+
[T_enum_discrim(cx)]
165165
}
166166
else {
167167
[T_array(T_i8(), size)]

0 commit comments

Comments
 (0)