Skip to content

Commit ce9a0b5

Browse files
committed
---
yaml --- r: 22449 b: refs/heads/master c: 9b7d9a9 h: refs/heads/master i: 22447: f9bf538 v: v3
1 parent 9508035 commit ce9a0b5

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: fdf0c1b353393ff34b1dee6edfbfece13f7c3093
2+
refs/heads/master: 9b7d9a9a1bcfba81979f6f1165b5274c93b03039
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
55
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be

trunk/src/rustc/middle/typeck/coherence.rs

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -166,16 +166,15 @@ class CoherenceChecker {
166166
self.get_base_type(base_mutability_and_type.ty)
167167
}
168168

169-
ty_enum(*) | ty_class(*) {
169+
ty_enum(*) | ty_trait(*) | ty_class(*) {
170170
some(original_type)
171171
}
172172

173173
ty_nil | ty_bot | ty_bool | ty_int(*) | ty_uint(*) | ty_float(*) |
174174
ty_str | ty_estr(*) | ty_vec(*) | ty_evec(*) | ty_rec(*) |
175-
ty_fn(*) | ty_trait(*) | ty_tup(*) | ty_var(*) |
176-
ty_var_integral(*) | ty_param(*) | ty_self | ty_constr(*) |
177-
ty_type | ty_opaque_box | ty_opaque_closure_ptr(*) |
178-
ty_unboxed_vec(*) {
175+
ty_fn(*) | ty_tup(*) | ty_var(*) | ty_var_integral(*) |
176+
ty_param(*) | ty_self | ty_constr(*) | ty_type | ty_opaque_box |
177+
ty_opaque_closure_ptr(*) | ty_unboxed_vec(*) {
179178
none
180179
}
181180
}
@@ -189,12 +188,14 @@ class CoherenceChecker {
189188
}
190189
some(base_type) {
191190
alt get(base_type).struct {
192-
ty_enum(def_id, _) | ty_class(def_id, _) {
191+
ty_enum(def_id, _) |
192+
ty_class(def_id, _) |
193+
ty_trait(def_id, _) {
193194
ret some(def_id);
194195
}
195196
_ {
196197
fail "get_base_type() returned a type that wasn't an \
197-
enum or class";
198+
enum, class, or trait";
198199
}
199200
}
200201
}
@@ -394,13 +395,13 @@ class CoherenceChecker {
394395
let results = @dvec();
395396
for items.each |item| {
396397
alt item.node {
397-
item_class(*) | item_enum(*) {
398+
item_class(*) | item_enum(*) | item_trait(*) {
398399
results.push(local_def(item.id));
399400
}
400401

401402
item_const(*) | item_fn(*) | item_mod(*) |
402-
item_foreign_mod(*) | item_ty(*) | item_trait(*) |
403-
item_impl(*) | item_mac(*) {
403+
item_foreign_mod(*) | item_ty(*) | item_impl(*) |
404+
item_mac(*) {
404405
// Nothing to do.
405406
}
406407
}

0 commit comments

Comments
 (0)