Skip to content

Commit 851decb

Browse files
committed
---
yaml --- r: 180062 b: refs/heads/auto c: bdb9f3e h: refs/heads/master v: v3
1 parent 4c91080 commit 851decb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+119
-106
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1010
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1111
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1212
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13-
refs/heads/auto: 446bc899b28e988f4252beca0d1858e7f7d866b1
13+
refs/heads/auto: bdb9f3e26666ef7cd0c3b78e4ddba886d7c49e82
1414
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1515
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1616
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336

branches/auto/mk/docs.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ endif
8787

8888
# Check for xelatex
8989

90-
ifneq ($(CFG_XELATEX),)
90+
ifeq ($(CFG_XELATEX),)
9191
CFG_LATEX := $(CFG_XELATEX)
9292
XELATEX = 1
9393
else

branches/auto/src/doc/reference.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3196,7 +3196,6 @@ stands for a *single* data field, whereas a wildcard `..` stands for *all* the
31963196
fields of a particular variant. For example:
31973197

31983198
```
3199-
#![feature(box_patterns)]
32003199
#![feature(box_syntax)]
32013200
enum List<X> { Nil, Cons(X, Box<List<X>>) }
32023201
@@ -3260,7 +3259,6 @@ the inside of the match.
32603259
An example of a `match` expression:
32613260

32623261
```
3263-
#![feature(box_patterns)]
32643262
#![feature(box_syntax)]
32653263
# fn process_pair(a: i32, b: i32) { }
32663264
# fn process_ten() { }
@@ -3296,7 +3294,6 @@ Subpatterns can also be bound to variables by the use of the syntax `variable @
32963294
subpattern`. For example:
32973295

32983296
```
3299-
#![feature(box_patterns)]
33003297
#![feature(box_syntax)]
33013298
33023299
enum List { Nil, Cons(uint, Box<List>) }

branches/auto/src/grammar/parser-lalr.y

Lines changed: 83 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,6 @@ extern char *yytext;
177177

178178
%precedence '{' '[' '(' '.'
179179

180-
%precedence RANGE
181-
182180
%start crate
183181

184182
%%
@@ -260,7 +258,11 @@ mod_item
260258

261259
// items that can appear outside of a fn block
262260
item
263-
: stmt_item
261+
: item_static
262+
| item_const
263+
| item_type
264+
| block_item
265+
| view_item
264266
| item_macro
265267
;
266268

@@ -270,7 +272,8 @@ stmt_item
270272
| item_const
271273
| item_type
272274
| block_item
273-
| view_item
275+
| use_item
276+
| extern_fn_item
274277
;
275278

276279
item_static
@@ -292,6 +295,7 @@ view_item
292295
: use_item
293296
| extern_fn_item
294297
| EXTERN CRATE ident ';' { $$ = mk_node("ViewItemExternCrate", 1, $3); }
298+
| EXTERN CRATE ident '=' str ';' { $$ = mk_node("ViewItemExternCrate", 2, $3, $5); }
295299
| EXTERN CRATE str AS ident ';' { $$ = mk_node("ViewItemExternCrate", 2, $3, $5); }
296300
;
297301

@@ -1189,10 +1193,12 @@ maybe_stmts
11891193
//
11901194
// In non-stmts contexts, expr can relax this trichotomy.
11911195
//
1192-
// There is also one other expr subtype: nonparen_expr disallows exprs
1193-
// surrounded by parens (including tuple expressions), this is
1194-
// necessary for BOX (place) expressions, so a parens expr following
1195-
// the BOX is always parsed as the place.
1196+
// There are also two other expr subtypes: first, nonparen_expr
1197+
// disallows exprs surrounded by parens (including tuple expressions),
1198+
// this is necessary for BOX (place) expressions, so a parens expr
1199+
// following the BOX is always parsed as the place. There is also
1200+
// expr_norange used in index_expr, which disallows '..' in
1201+
// expressions as that has special meaning inside of brackets.
11961202

11971203
stmts
11981204
: stmt { $$ = mk_node("stmts", 1, $1); }
@@ -1259,7 +1265,7 @@ nonblock_expr
12591265
| path_expr '{' struct_expr_fields '}' { $$ = mk_node("ExprStruct", 2, $1, $3); }
12601266
| nonblock_expr '.' path_generic_args_with_colons { $$ = mk_node("ExprField", 2, $1, $3); }
12611267
| nonblock_expr '.' LIT_INTEGER { $$ = mk_node("ExprTupleIndex", 1, $1); }
1262-
| nonblock_expr '[' maybe_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
1268+
| nonblock_expr '[' index_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
12631269
| nonblock_expr '(' maybe_exprs ')' { $$ = mk_node("ExprCall", 2, $1, $3); }
12641270
| '[' vec_expr ']' { $$ = mk_node("ExprVec", 1, $2); }
12651271
| '(' maybe_exprs ')' { $$ = mk_node("ExprParen", 1, $2); }
@@ -1301,11 +1307,9 @@ nonblock_expr
13011307
| nonblock_expr DOTDOT { $$ = mk_node("ExprRange", 2, $1, mk_none()); }
13021308
| nonblock_expr DOTDOT expr { $$ = mk_node("ExprRange", 2, $1, $3); }
13031309
| DOTDOT expr { $$ = mk_node("ExprRange", 2, mk_none(), $2); }
1304-
| DOTDOT { $$ = mk_node("ExprRange", 2, mk_none(), mk_none()); }
13051310
| nonblock_expr AS ty { $$ = mk_node("ExprCast", 2, $1, $3); }
13061311
| BOX nonparen_expr { $$ = mk_node("ExprBox", 1, $2); }
13071312
| %prec BOXPLACE BOX '(' maybe_expr ')' nonblock_expr { $$ = mk_node("ExprBox", 2, $3, $5); }
1308-
| expr_qualified_path
13091313
| nonblock_prefix_expr
13101314
;
13111315

@@ -1318,7 +1322,7 @@ expr
13181322
| path_expr '{' struct_expr_fields '}' { $$ = mk_node("ExprStruct", 2, $1, $3); }
13191323
| expr '.' path_generic_args_with_colons { $$ = mk_node("ExprField", 2, $1, $3); }
13201324
| expr '.' LIT_INTEGER { $$ = mk_node("ExprTupleIndex", 1, $1); }
1321-
| expr '[' maybe_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
1325+
| expr '[' index_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
13221326
| expr '(' maybe_exprs ')' { $$ = mk_node("ExprCall", 2, $1, $3); }
13231327
| '(' maybe_exprs ')' { $$ = mk_node("ExprParen", 1, $2); }
13241328
| '[' vec_expr ']' { $$ = mk_node("ExprVec", 1, $2); }
@@ -1360,11 +1364,9 @@ expr
13601364
| expr DOTDOT { $$ = mk_node("ExprRange", 2, $1, mk_none()); }
13611365
| expr DOTDOT expr { $$ = mk_node("ExprRange", 2, $1, $3); }
13621366
| DOTDOT expr { $$ = mk_node("ExprRange", 2, mk_none(), $2); }
1363-
| DOTDOT { $$ = mk_node("ExprRange", 2, mk_none(), mk_none()); }
13641367
| expr AS ty { $$ = mk_node("ExprCast", 2, $1, $3); }
13651368
| BOX nonparen_expr { $$ = mk_node("ExprBox", 1, $2); }
13661369
| %prec BOXPLACE BOX '(' maybe_expr ')' expr { $$ = mk_node("ExprBox", 2, $3, $5); }
1367-
| expr_qualified_path
13681370
| block_expr
13691371
| block
13701372
| nonblock_prefix_expr
@@ -1379,7 +1381,7 @@ nonparen_expr
13791381
| path_expr '{' struct_expr_fields '}' { $$ = mk_node("ExprStruct", 2, $1, $3); }
13801382
| nonparen_expr '.' path_generic_args_with_colons { $$ = mk_node("ExprField", 2, $1, $3); }
13811383
| nonparen_expr '.' LIT_INTEGER { $$ = mk_node("ExprTupleIndex", 1, $1); }
1382-
| nonparen_expr '[' maybe_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
1384+
| nonparen_expr '[' index_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
13831385
| nonparen_expr '(' maybe_exprs ')' { $$ = mk_node("ExprCall", 2, $1, $3); }
13841386
| '[' vec_expr ']' { $$ = mk_node("ExprVec", 1, $2); }
13851387
| CONTINUE { $$ = mk_node("ExprAgain", 0); }
@@ -1420,11 +1422,65 @@ nonparen_expr
14201422
| nonparen_expr DOTDOT { $$ = mk_node("ExprRange", 2, $1, mk_none()); }
14211423
| nonparen_expr DOTDOT nonparen_expr { $$ = mk_node("ExprRange", 2, $1, $3); }
14221424
| DOTDOT nonparen_expr { $$ = mk_node("ExprRange", 2, mk_none(), $2); }
1423-
| DOTDOT { $$ = mk_node("ExprRange", 2, mk_none(), mk_none()); }
14241425
| nonparen_expr AS ty { $$ = mk_node("ExprCast", 2, $1, $3); }
14251426
| BOX nonparen_expr { $$ = mk_node("ExprBox", 1, $2); }
14261427
| %prec BOXPLACE BOX '(' maybe_expr ')' expr { $$ = mk_node("ExprBox", 1, $3, $5); }
1427-
| expr_qualified_path
1428+
| block_expr
1429+
| block
1430+
| nonblock_prefix_expr
1431+
;
1432+
1433+
expr_norange
1434+
: lit { $$ = mk_node("ExprLit", 1, $1); }
1435+
| %prec IDENT
1436+
path_expr { $$ = mk_node("ExprPath", 1, $1); }
1437+
| SELF { $$ = mk_node("ExprPath", 1, mk_node("ident", 1, mk_atom("self"))); }
1438+
| macro_expr { $$ = mk_node("ExprMac", 1, $1); }
1439+
| path_expr '{' struct_expr_fields '}' { $$ = mk_node("ExprStruct", 2, $1, $3); }
1440+
| expr_norange '.' path_generic_args_with_colons { $$ = mk_node("ExprField", 2, $1, $3); }
1441+
| expr_norange '.' LIT_INTEGER { $$ = mk_node("ExprTupleIndex", 1, $1); }
1442+
| expr_norange '[' index_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
1443+
| expr_norange '(' maybe_exprs ')' { $$ = mk_node("ExprCall", 2, $1, $3); }
1444+
| '(' maybe_exprs ')' { $$ = mk_node("ExprParen", 1, $2); }
1445+
| '[' vec_expr ']' { $$ = mk_node("ExprVec", 1, $2); }
1446+
| CONTINUE { $$ = mk_node("ExprAgain", 0); }
1447+
| CONTINUE ident { $$ = mk_node("ExprAgain", 1, $2); }
1448+
| RETURN { $$ = mk_node("ExprRet", 0); }
1449+
| RETURN expr { $$ = mk_node("ExprRet", 1, $2); }
1450+
| BREAK { $$ = mk_node("ExprBreak", 0); }
1451+
| BREAK ident { $$ = mk_node("ExprBreak", 1, $2); }
1452+
| expr_norange '=' expr_norange { $$ = mk_node("ExprAssign", 2, $1, $3); }
1453+
| expr_norange SHLEQ expr_norange { $$ = mk_node("ExprAssignShl", 2, $1, $3); }
1454+
| expr_norange SHREQ expr_norange { $$ = mk_node("ExprAssignShr", 2, $1, $3); }
1455+
| expr_norange MINUSEQ expr_norange { $$ = mk_node("ExprAssignSub", 2, $1, $3); }
1456+
| expr_norange ANDEQ expr_norange { $$ = mk_node("ExprAssignBitAnd", 2, $1, $3); }
1457+
| expr_norange OREQ expr_norange { $$ = mk_node("ExprAssignBitOr", 2, $1, $3); }
1458+
| expr_norange PLUSEQ expr_norange { $$ = mk_node("ExprAssignAdd", 2, $1, $3); }
1459+
| expr_norange STAREQ expr_norange { $$ = mk_node("ExprAssignMul", 2, $1, $3); }
1460+
| expr_norange SLASHEQ expr_norange { $$ = mk_node("ExprAssignDiv", 2, $1, $3); }
1461+
| expr_norange CARETEQ expr_norange { $$ = mk_node("ExprAssignBitXor", 2, $1, $3); }
1462+
| expr_norange PERCENTEQ expr_norange { $$ = mk_node("ExprAssignRem", 2, $1, $3); }
1463+
| expr_norange OROR expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiOr"), $1, $3); }
1464+
| expr_norange ANDAND expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiAnd"), $1, $3); }
1465+
| expr_norange EQEQ expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiEq"), $1, $3); }
1466+
| expr_norange NE expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiNe"), $1, $3); }
1467+
| expr_norange '<' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiLt"), $1, $3); }
1468+
| expr_norange '>' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiGt"), $1, $3); }
1469+
| expr_norange LE expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiLe"), $1, $3); }
1470+
| expr_norange GE expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiGe"), $1, $3); }
1471+
| expr_norange '|' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiBitOr"), $1, $3); }
1472+
| expr_norange '^' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiBitXor"), $1, $3); }
1473+
| expr_norange '&' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiBitAnd"), $1, $3); }
1474+
| expr_norange SHL expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiShl"), $1, $3); }
1475+
| expr_norange SHR expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiShr"), $1, $3); }
1476+
| expr_norange '+' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiAdd"), $1, $3); }
1477+
| expr_norange '-' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiSub"), $1, $3); }
1478+
| expr_norange '*' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiMul"), $1, $3); }
1479+
| expr_norange '/' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiDiv"), $1, $3); }
1480+
| expr_norange '%' expr_norange { $$ = mk_node("ExprBinary", 3, mk_atom("BiRem"), $1, $3); }
1481+
| expr_norange AS ty { $$ = mk_node("Expr_NorangeCast", 2, $1, $3); }
1482+
| BOX nonparen_expr { $$ = mk_node("ExprBox", 1, $2); }
1483+
| %prec BOXPLACE BOX '(' maybe_expr ')' expr_norange { $$ = mk_node("ExprBox", 2, $3, $5); }
14281484
| block_expr
14291485
| block
14301486
| nonblock_prefix_expr
@@ -1438,7 +1494,7 @@ expr_nostruct
14381494
| macro_expr { $$ = mk_node("ExprMac", 1, $1); }
14391495
| expr_nostruct '.' path_generic_args_with_colons { $$ = mk_node("ExprField", 2, $1, $3); }
14401496
| expr_nostruct '.' LIT_INTEGER { $$ = mk_node("ExprTupleIndex", 1, $1); }
1441-
| expr_nostruct '[' maybe_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
1497+
| expr_nostruct '[' index_expr ']' { $$ = mk_node("ExprIndex", 2, $1, $3); }
14421498
| expr_nostruct '(' maybe_exprs ')' { $$ = mk_node("ExprCall", 2, $1, $3); }
14431499
| '[' vec_expr ']' { $$ = mk_node("ExprVec", 1, $2); }
14441500
| '(' maybe_exprs ')' { $$ = mk_node("ExprParen", 1, $2); }
@@ -1477,14 +1533,12 @@ expr_nostruct
14771533
| expr_nostruct '*' expr_nostruct { $$ = mk_node("ExprBinary", 3, mk_atom("BiMul"), $1, $3); }
14781534
| expr_nostruct '/' expr_nostruct { $$ = mk_node("ExprBinary", 3, mk_atom("BiDiv"), $1, $3); }
14791535
| expr_nostruct '%' expr_nostruct { $$ = mk_node("ExprBinary", 3, mk_atom("BiRem"), $1, $3); }
1480-
| expr_nostruct DOTDOT %prec RANGE { $$ = mk_node("ExprRange", 2, $1, mk_none()); }
1536+
| expr_nostruct DOTDOT { $$ = mk_node("ExprRange", 2, $1, mk_none()); }
14811537
| expr_nostruct DOTDOT expr_nostruct { $$ = mk_node("ExprRange", 2, $1, $3); }
14821538
| DOTDOT expr_nostruct { $$ = mk_node("ExprRange", 2, mk_none(), $2); }
1483-
| DOTDOT { $$ = mk_node("ExprRange", 2, mk_none(), mk_none()); }
14841539
| expr_nostruct AS ty { $$ = mk_node("ExprCast", 2, $1, $3); }
14851540
| BOX nonparen_expr { $$ = mk_node("ExprBox", 1, $2); }
14861541
| %prec BOXPLACE BOX '(' maybe_expr ')' expr_nostruct { $$ = mk_node("ExprBox", 1, $3, $5); }
1487-
| expr_qualified_path
14881542
| block_expr
14891543
| block
14901544
| nonblock_prefix_expr_nostruct
@@ -1512,33 +1566,6 @@ nonblock_prefix_expr
15121566
| proc_expr
15131567
;
15141568

1515-
expr_qualified_path
1516-
: '<' ty_sum AS trait_ref '>' MOD_SEP ident
1517-
{
1518-
$$ = mk_node("ExprQualifiedPath", 3, $2, $4, $7);
1519-
}
1520-
| '<' ty_sum AS trait_ref '>' MOD_SEP ident generic_args
1521-
{
1522-
$$ = mk_node("ExprQualifiedPath", 4, $2, $4, $7, $8);
1523-
}
1524-
| SHL ty_sum AS trait_ref '>' MOD_SEP ident AS trait_ref '>' MOD_SEP ident
1525-
{
1526-
$$ = mk_node("ExprQualifiedPath", 3, mk_node("ExprQualifiedPath", 3, $2, $4, $7), $9, $12);
1527-
}
1528-
| SHL ty_sum AS trait_ref '>' MOD_SEP ident generic_args AS trait_ref '>' MOD_SEP ident
1529-
{
1530-
$$ = mk_node("ExprQualifiedPath", 3, mk_node("ExprQualifiedPath", 4, $2, $4, $7, $8), $10, $13);
1531-
}
1532-
| SHL ty_sum AS trait_ref '>' MOD_SEP ident AS trait_ref '>' MOD_SEP ident generic_args
1533-
{
1534-
$$ = mk_node("ExprQualifiedPath", 4, mk_node("ExprQualifiedPath", 3, $2, $4, $7), $9, $12, $13);
1535-
}
1536-
| SHL ty_sum AS trait_ref '>' MOD_SEP ident generic_args AS trait_ref '>' MOD_SEP ident generic_args
1537-
{
1538-
$$ = mk_node("ExprQualifiedPath", 4, mk_node("ExprQualifiedPath", 4, $2, $4, $7, $8), $10, $13, $14);
1539-
}
1540-
1541-
15421569
lambda_expr
15431570
: %prec LAMBDA
15441571
OROR ret_ty expr { $$ = mk_node("ExprFnBlock", 3, mk_none(), $2, $3); }
@@ -1585,6 +1612,14 @@ vec_expr
15851612
| exprs ';' expr { $$ = mk_node("VecRepeat", 2, $1, $3); }
15861613
;
15871614

1615+
index_expr
1616+
: expr_norange { $$ = mk_node("Index", 1, $1); }
1617+
| expr_norange DOTDOT { $$ = mk_node("SliceToEnd", 1, $1); }
1618+
| DOTDOT expr_norange { $$ = mk_node("SliceFromBeginning", 1, $2); }
1619+
| expr_norange DOTDOT expr_norange { $$ = mk_node("Slice", 2, $1, $3); }
1620+
| %empty { $$ = mk_none(); }
1621+
;
1622+
15881623
struct_expr_fields
15891624
: field_inits
15901625
| field_inits ','

branches/auto/src/libcollections/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424

2525
#![feature(alloc)]
2626
#![feature(box_syntax)]
27-
#![feature(box_patterns)]
2827
#![feature(core)]
2928
#![feature(hash)]
3029
#![feature(staged_api)]

branches/auto/src/librustc/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
html_favicon_url = "http://www.rust-lang.org/favicon.ico",
2424
html_root_url = "http://doc.rust-lang.org/nightly/")]
2525

26-
#![feature(box_patterns)]
2726
#![feature(box_syntax)]
2827
#![feature(collections)]
2928
#![feature(core)]

branches/auto/src/librustc_resolve/lib.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2196,7 +2196,9 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
21962196

21972197
// Search for external modules.
21982198
if namespace == TypeNS {
2199-
if let Some(module) = module_.external_module_children.borrow().get(&name).cloned() {
2199+
// FIXME (21114): In principle unclear `child` *has* to be lifted.
2200+
let child = module_.external_module_children.borrow().get(&name).cloned();
2201+
if let Some(module) = child {
22002202
let name_bindings =
22012203
Rc::new(Resolver::create_name_bindings_from_module(module));
22022204
debug!("lower name bindings succeeded");
@@ -2481,7 +2483,9 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
24812483

24822484
// Finally, search through external children.
24832485
if namespace == TypeNS {
2484-
if let Some(module) = module_.external_module_children.borrow().get(&name).cloned() {
2486+
// FIXME (21114): In principle unclear `child` *has* to be lifted.
2487+
let child = module_.external_module_children.borrow().get(&name).cloned();
2488+
if let Some(module) = child {
24852489
let name_bindings =
24862490
Rc::new(Resolver::create_name_bindings_from_module(module));
24872491
return Success((Target::new(module_,

branches/auto/src/librustc_trans/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
html_root_url = "http://doc.rust-lang.org/nightly/")]
2525

2626
#![feature(alloc)]
27-
#![feature(box_patterns)]
2827
#![feature(box_syntax)]
2928
#![feature(collections)]
3029
#![feature(core)]

branches/auto/src/librustc_typeck/check/method/probe.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,8 @@ impl<'a,'tcx> ProbeContext<'a,'tcx> {
525525
trait_def_id);
526526

527527
let trait_impls = self.tcx().trait_impls.borrow();
528-
let impl_def_ids = match trait_impls.get(&trait_def_id) {
528+
let impl_def_ids = trait_impls.get(&trait_def_id);
529+
let impl_def_ids = match impl_def_ids {
529530
None => { return; }
530531
Some(impls) => impls,
531532
};

branches/auto/src/librustc_typeck/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@ This API is completely unstable and subject to change.
7474

7575
#![allow(non_camel_case_types)]
7676

77-
#![feature(box_patterns)]
7877
#![feature(box_syntax)]
7978
#![feature(collections)]
8079
#![feature(core)]

branches/auto/src/librustdoc/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
html_root_url = "http://doc.rust-lang.org/nightly/",
1919
html_playground_url = "http://play.rust-lang.org/")]
2020

21-
#![feature(box_patterns)]
2221
#![feature(box_syntax)]
2322
#![feature(collections)]
2423
#![feature(core)]

branches/auto/src/libstd/old_io/mod.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@
5050
//! ```rust
5151
//! use std::old_io as io;
5252
//!
53-
//! for line in io::stdin().lock().lines() {
53+
//! let mut stdin = io::stdin();
54+
//! for line in stdin.lock().lines() {
5455
//! print!("{}", line.unwrap());
5556
//! }
5657
//! ```

branches/auto/src/libstd/old_io/stdio.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,8 @@ impl StdinReader {
143143
/// ```rust
144144
/// use std::old_io;
145145
///
146-
/// for line in old_io::stdin().lock().lines() {
146+
/// let mut stdin = old_io::stdin();
147+
/// for line in stdin.lock().lines() {
147148
/// println!("{}", line.unwrap());
148149
/// }
149150
/// ```

0 commit comments

Comments
 (0)