File tree Expand file tree Collapse file tree 3 files changed +22
-4
lines changed
rustc/middle/typeck/check Expand file tree Collapse file tree 3 files changed +22
-4
lines changed Original file line number Diff line number Diff line change 2
2
refs/heads/master: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
4
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
5
- refs/heads/try: 3a5c7f52cc089214c936f409b3f97d6bda377d84
5
+ refs/heads/try: 280dfd2d29c7c7adeeef9b02f85a101ea3a5bde6
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8
8
refs/heads/try2: d0c6ce338884ee21843f4b40bf6bf18d222ce5df
Original file line number Diff line number Diff line change @@ -140,6 +140,26 @@ struct lookup {
140
140
ty:: ty_class( did, substs) => {
141
141
self . add_candidates_from_class ( did, substs) ;
142
142
}
143
+ ty:: ty_self => {
144
+ // Call is of the form "self.foo()" and appears in one
145
+ // of a trait's provided methods.
146
+ let self_def_id = match self . fcx . self_info {
147
+ some( self_info) => self_info. def_id ,
148
+ none => {
149
+ // Shouldn't happen; there should always be a
150
+ // self_info in this case.
151
+ self . tcx ( ) . sess . bug ( ~"unexpected `none` for self_info")
152
+ }
153
+ } ;
154
+
155
+ let substs = {
156
+ self_r: none,
157
+ self_ty: none,
158
+ tps: ~[ ] ,
159
+ } ;
160
+
161
+ self . add_candidates_from_trait ( self_def_id, substs) ;
162
+ }
143
163
_ => ( )
144
164
}
145
165
Original file line number Diff line number Diff line change 1
1
//xfail-test
2
2
3
- // Right now, this fails with "attempted access of field `purr` on
4
- // type `self`, but no public field or method with that name was
5
- // found".
3
+ // Currently failing with an ICE in trans.
6
4
7
5
trait Cat {
8
6
fn meow ( ) -> bool ;
You can’t perform that action at this time.
0 commit comments