Alex Crichton
3ce9dba677
std: Use the new for
protocol
2013-05-10 02:46:18 -04:00
Alex Crichton
28256052a4
core: Use the new for
protocol
2013-05-10 02:46:18 -04:00
Alex Crichton
0cde8ba684
Implement a new protocol for for
loops that's much more easily composable
2013-05-10 02:46:18 -04:00
bors
ad8e236f32
auto merge of #6336 : nikomatsakis/rust/issue-6308-closure-bounds, r=nikomatsakis
...
Use a bitset to represent built-in bounds. There are several places in the language where only builtin bounds (aka kinds) will be accepted, e.g. on closures, destructor type parameters perhaps, and on trait types.
r? @brson
2013-05-09 17:50:21 -07:00
bors
f547a671dc
auto merge of #6373 : nikomatsakis/rust/issue-6355-perf-regression, r=graydon
...
Fix #6355 and #6272---we were not giving the correct index to the derefs that occur as part of the rooting process, resulting in extra copies and generally bogus behavior. Haven't quite produced the right test for this, but I thought I'd push the fix in the meantime. Test will follow shortly.
r? @graydon
2013-05-09 13:45:49 -07:00
Niko Matsakis
78520867b9
rustc: Add EnumSet tests
2013-05-09 16:28:25 -04:00
Niko Matsakis
e18ed77b72
Remove remnants of mutable fields from mem_categorization, borrowck.
2013-05-09 15:58:41 -04:00
Niko Matsakis
15164cc6a6
Issue the correct deref count for the implicit deref that occurs
...
as part of an autoslice operation (#6272 ).
Fixes #6272 .
2013-05-09 15:58:02 -04:00
bors
7675856253
auto merge of #6354 : Aatch/rust/uninit-intrinsic, r=graydon
...
Adds an `uninit` intrinsic.
It's just an empty function, so llvm optimizes it down to nothing.
I changed all of the `init` intrinsic usages to `uninit` where it seemed appropriate to.
2013-05-09 12:37:00 -07:00
bors
ce9c0225c4
auto merge of #6349 : thestinger/rust/explicit_copy, r=thestinger
...
I removed some of the copies, but most are just made explicit. The usage in `libcore` was already fixed, but the attribute was only set to warn (not removed).
2013-05-09 11:18:43 -07:00
Daniel Micay
2bc12635a2
remove vecs_implicitly_copyable from libstd/libcore
2013-05-09 14:00:53 -04:00
bors
7a4c6e587d
auto merge of #6325 : sammykim/rust/lint-name, r=graydon
...
Fix #3525 .
2013-05-09 08:54:38 -07:00
Niko Matsakis
dc2ca9d883
Refactor representation of bounds to separate out BuiltinBounds into
...
its own type. Use a bitset to represent built-in bounds. There
are several places in the language where only builtin bounds (aka kinds)
will be accepted, e.g. on closures, destructor type parameters perhaps,
and on trait types.
2013-05-09 11:39:06 -04:00
bors
4757a58798
auto merge of #6359 : kud1ing/rust/fixes, r=bstrie
2013-05-09 07:51:40 -07:00
Lenny222
e3230330b7
back-ticks
2013-05-09 15:46:32 +02:00
James Miller
414970c46f
Add intrinsic declaration where I missed them
2013-05-09 23:16:07 +12:00
James Miller
57509709b4
Make staged versions of the functions that use uninit
2013-05-09 23:05:17 +12:00
bors
ca95e7f94e
auto merge of #6345 : seanmoon/rust/fix-typos, r=sanxiyn
...
Hi there,
Really enjoying Rust. Noticed a few typos so I searched around for a few more--here's some fixes.
Ran `make check` and got `summary of 24 test runs: 4868 passed; 0 failed; 330 ignored`.
Thanks!
Sean
2013-05-09 03:51:32 -07:00
James Miller
f5ab112e6b
Replace init() with uninit() where appropriate
2013-05-09 22:41:54 +12:00
James Miller
050c744c23
Add uninit intrinsic
2013-05-09 22:23:38 +12:00
bors
5617916726
auto merge of #6343 : thestinger/rust/new_iter, r=brson
...
it's silly to duplicate the namespace in the fn name
2013-05-09 02:45:31 -07:00
bors
fda176b070
auto merge of #6337 : thestinger/rust/fix_region, r=thestinger
...
also removes unnecessary casts from the RcMut implementation
2013-05-09 00:15:33 -07:00
bors
936c07dcf0
auto merge of #6328 : recrack/rust/rename_cleanup, r=sanxiyn
...
rename vec::each(var) to var.each
> librustc, libsyntax, libstd, librustdoc, libcore
2013-05-08 22:54:37 -07:00
Youngmin Yoo
c02064d153
librustc: rename vec::each(var) to var.each
2013-05-09 14:20:04 +09:00
Youngmin Yoo
841f4ceaf4
libsyntax: rename vec::each(var) to var.each
2013-05-09 14:20:04 +09:00
Youngmin Yoo
d4fa0f1485
libstd: rename vec::each(var) to var.each
2013-05-09 14:20:04 +09:00
Youngmin Yoo
472d9f33df
librustdoc: rename vec::each(var) to var.each
2013-05-09 14:17:18 +09:00
Youngmin Yoo
9a292b3da5
libcore: rename vec::each(variable) to variable.each
2013-05-09 14:17:18 +09:00
bors
101d4bf8b2
auto merge of #6332 : huonw/rust/std-base64-match, r=nikomatsakis
2013-05-08 21:45:37 -07:00
Sangeun Kim
1b4e375046
Add space
2013-05-09 10:44:27 +09:00
bors
3bbbb314ee
auto merge of #6327 : z0w0/rust/rm-notest, r=brson
...
Makes it more consistent, imo.
2013-05-08 18:15:41 -07:00
bors
d82d9874a6
auto merge of #6232 : pcwalton/rust/demuting, r=pcwalton
...
They're still parsed for bootstrapping purposes, but the qualifier is immediately dropped on the floor.
r? @nikomatsakis
2013-05-08 17:09:37 -07:00
Patrick Walton
d20e63ab65
test: Fix modes in the benchmarks.
2013-05-08 17:04:03 -07:00
Patrick Walton
85d9409b20
test: Fix broken test
2013-05-08 17:04:03 -07:00
Patrick Walton
36fbf71686
llvm: Unrevert change
2013-05-08 17:04:03 -07:00
Patrick Walton
72868450df
libcore: Fix more merge fallout.
2013-05-08 17:04:03 -07:00
Patrick Walton
3affc6ed40
librustc: Fix merge fallout.
2013-05-08 17:04:02 -07:00
Patrick Walton
9d011ebf67
test: Fix tests.
2013-05-08 17:04:02 -07:00
Patrick Walton
16a0125e41
libcore: Fix tests.
2013-05-08 17:04:01 -07:00
Patrick Walton
49a66a5c5a
librustc: Stop parsing modes and remove them entirely from the language
2013-05-08 17:04:01 -07:00
Patrick Walton
99daec602f
librustc: Fix merge fallout.
2013-05-08 17:04:00 -07:00
Patrick Walton
278b487cab
test: Fix tests and the pipe compiler
2013-05-08 17:04:00 -07:00
Patrick Walton
db4573a776
librustc: Remove mutable fields from the language.
...
They're still parsed though, to get through bootstrapping.
2013-05-08 17:04:00 -07:00
Patrick Walton
c7522417d4
libstd: Remove some residual mutable fields
2013-05-08 17:04:00 -07:00
Patrick Walton
d12d25534b
libcore: Remove more mutable fields from comm
2013-05-08 17:03:59 -07:00
Patrick Walton
8919f32f83
Remove mutable fields from comm by using casts. Also mark the cast in cell.
2013-05-08 17:03:59 -07:00
Patrick Walton
56507798d9
libcore: Remove mutable fields from repr
2013-05-08 17:03:59 -07:00
Patrick Walton
6a44482b17
libcore: Remove mutable fields from pipes
2013-05-08 17:03:59 -07:00
Patrick Walton
803a4f45fa
libcore: Remove mutable fields from the task builder API
2013-05-08 17:03:59 -07:00
Patrick Walton
226ee7d86f
libcore: Remove mutable fields from task::spawn
2013-05-08 17:03:58 -07:00