File tree Expand file tree Collapse file tree 2 files changed +25
-1
lines changed
trunk/src/libsyntax/parse Expand file tree Collapse file tree 2 files changed +25
-1
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: e7fe903d882ba3206016442f2a743ba8369abf97
2
+ refs/heads/master: f7681f9236168cfad661b0ad73798a2d54a941f1
3
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
4
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
5
5
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be
Original file line number Diff line number Diff line change @@ -2262,6 +2262,30 @@ struct parser {
2262
2262
push ( bounds, bound_const) ;
2263
2263
} else if self . eat_keyword ( ~"owned") {
2264
2264
push ( bounds, bound_owned) ;
2265
+ } else if is_ident ( self . token ) {
2266
+ // XXX: temporary until kinds become traits
2267
+ let maybe_bound = match self . token {
2268
+ token:: IDENT ( sid, _) => {
2269
+ match * self . id_to_str ( sid) {
2270
+ ~"Send " => Some ( bound_send) ,
2271
+ ~"Copy " => Some ( bound_copy) ,
2272
+ ~"Const " => Some ( bound_const) ,
2273
+ ~"Owned " => Some ( bound_owned) ,
2274
+ _ => None
2275
+ }
2276
+ }
2277
+ _ => fail
2278
+ } ;
2279
+
2280
+ match maybe_bound {
2281
+ Some ( bound) => {
2282
+ self . bump ( ) ;
2283
+ push ( bounds, bound) ;
2284
+ }
2285
+ None => {
2286
+ push ( bounds, bound_trait ( self . parse_ty ( false ) ) ) ;
2287
+ }
2288
+ }
2265
2289
} else {
2266
2290
push ( bounds, bound_trait ( self . parse_ty ( false ) ) ) ;
2267
2291
}
You can’t perform that action at this time.
0 commit comments