Björn Steinbrink
43cae88079
Lexer: Fix offset handling in get_str_from()
...
As the comment said, the subtraction is bogus for multibyte characters.
Fortunately, we can just use last_pos instead of pos to get the correct
position without any subtraction hackery.
2013-06-08 03:24:47 +02:00
Björn Steinbrink
29e5aa0942
Remove some unnecessary closures
2013-06-08 03:24:47 +02:00
Björn Steinbrink
b65dc42b25
TypeChecker: Avoid unnecessary copies
2013-06-08 03:24:47 +02:00
Björn Steinbrink
de1df3608b
Lexer: Avoid unnecessary allocations
2013-06-08 03:24:47 +02:00
Björn Steinbrink
96798f5e05
tydecode: Accept a plain borrowed pointer to the data
2013-06-08 03:24:47 +02:00
Björn Steinbrink
51e85f5e6e
Avoid unnecessary heap allocations in the metadata ty decoder
2013-06-08 03:24:47 +02:00
Björn Steinbrink
b870477897
Avoid unnecessary (re-)allocations in the lexer
2013-06-08 03:24:47 +02:00
Alexei Sholik
93b2ddfc88
A reminder that a block is a single expr in closures
...
This is something that's only been briefly mentioned in the beginning of
the tutorial and all of the closure examples within this subsection
include only one expression between { and }.
2013-06-08 04:10:50 +03:00
bors
9b0986acf4
auto merge of #7001 : alco/rust/tutorial-for-loop, r=bstrie
...
The "4.3 Loops" section only describes `while` and `loop`. We then see `for`
used in a code sample at the end of the "13. Vectors and strings" section,
but it's explained for the first time only in the next section --
"14. Closures".
It is worth mentioning it in "4.3 Loops".
---
Feel free to reword it and commit yourself if you don't like my wording.
2013-06-07 17:43:32 -07:00
Tim Chevalier
239b81f111
std: Change str::from_bytes to raise a condition on invalid input
...
As per #4765
2013-06-07 17:42:50 -07:00
Alexei Sholik
83b68a2f69
Mention for
in the section on loops
...
The "4.3 Loops" section only describes `while` and `loop`. We then see `for`
used in a code sample at the end of the "13. Vectors and strings" section,
but it's explained for the first time only in the next section --
"14. Closures".
It is worth mentioning it in "4.3 Loops".
2013-06-08 03:17:56 +03:00
Daniel Micay
a593d8f67c
pass correct flags to jemalloc for cross-compiling
2013-06-07 18:27:15 -04:00
Philipp Brüschweiler
080a462050
rustc::typeck: fix array out of bounds
...
Fixes #6155
2013-06-07 22:09:01 +02:00
Philipp Brüschweiler
320995198c
Add test for #6155
2013-06-07 22:08:54 +02:00
bors
b8cf2f8056
auto merge of #6999 : thestinger/rust/each-fn-kill, r=thestinger
2013-06-07 11:55:36 -07:00
Daniel Micay
07e4d69baa
iterator: work around method resolve bug ( #5898 )
2013-06-07 14:50:06 -04:00
Daniel Micay
d945543ebf
Merge branch 'each-fn-kill' of https://github.com/huonw/rust into each-fn-kill
2013-06-07 14:43:02 -04:00
Huon Wilson
54d914a9a9
std: remove each[i]_mut functions, in favour of iterators.
2013-06-08 03:24:27 +10:00
Brian Anderson
d83d38c7fe
std::rt: Reduce task stack size to 1MB
2013-06-07 10:23:58 -07:00
bors
18019a1304
auto merge of #6990 : huonw/rust/const-eval, r=bstrie
...
This fail! caused ICEs, but was trivial to convert to a useful error message.
2013-06-07 08:55:33 -07:00
Huon Wilson
bc81d279fa
rustc: Convert a fail! to a useful error message.
2013-06-08 01:46:49 +10:00
Huon Wilson
f661a15b2b
std: remove vec::each2 and vec::each2_mut in favour of iterators
2013-06-08 01:20:47 +10:00
Huon Wilson
5e9f006c5b
std: more dummy type parameters on iterators to work around #6967 .
2013-06-08 01:10:27 +10:00
bors
0d0c004b81
auto merge of #6988 : huonw/rust/deriving-changes, r=bstrie
...
Several minor changes:
- The clean-up I mentioned in #6851 (moving functions from deriving/mod.rs to deriving/generic.rs)
- Move `expand_generic_deriving` to a method
- Reimplement `deriving(Ord)` with no dependence on `Eq`
2013-06-07 06:58:33 -07:00
Huon Wilson
a965f4981a
syntax: correct the modifications to deriving(Ord) so that it works.
2013-06-07 22:36:57 +10:00
Huon Wilson
ebf7281b7b
syntax: rewrite deriving(Ord) to not require Eq.
...
lt and gt are implement directly in terms of the corresponding
method on their elements, and le and ge are the negations of these.
2013-06-07 18:36:16 +10:00
bors
af863cf2a4
auto merge of #6946 : Blei/rust/fix-each-path, r=Aatch
2013-06-07 01:34:32 -07:00
Philipp Brüschweiler
9b3743938d
rustc::metadata::decoder: cleanup and slightly speed up each_path
2013-06-07 10:00:48 +02:00
Huon Wilson
6d5beda677
syntax: move expand_generic_deriving to be a method on TraitDef
2013-06-07 17:46:44 +10:00
Huon Wilson
43e52e4bf1
syntax: move functions from deriving/mod to deriving/generic.
...
These are now only called in generic and can be private. This
includes manually inlining/merging some that are called once.
2013-06-07 17:30:38 +10:00
bors
4abd83b18d
auto merge of #6985 : Aatch/rust/fixed-vec-6977, r=thestinger
...
This fixes #6977 . Negative counts don't make sense anyway.
2013-06-06 20:34:32 -07:00
bors
74d9de7abd
auto merge of #6979 : thestinger/rust/libc, r=brson
...
LLVM provides these functions as intrinsics, and will generate calls to
libc when appropriate. They are exposed in the `ptr` module as
`copy_nonoverlapping_memory`, `copy_memory` and `set_memory`.
@graydon: r?
2013-06-06 19:40:32 -07:00
bors
5d2cadbfea
auto merge of #6895 : cmr/rust/jemalloc, r=brson
2013-06-06 18:43:37 -07:00
Brian Anderson
d4de99aa6c
std::rt: Fix a race in the UvRemoteCallback dtor
2013-06-06 17:53:13 -07:00
Brian Anderson
d6ccc6bc99
std::rt: Fix stream test to be parallel
2013-06-06 17:53:13 -07:00
Brian Anderson
8afec77cb0
std::rt: Configure test threads with RUST_TEST_THREADS. Default is ncores x2
2013-06-06 17:53:13 -07:00
Brian Anderson
f9a5005f52
rt: Add rust_get_num_cpus
2013-06-06 17:53:13 -07:00
Brian Anderson
80849e78a8
std: Fix stage0 build
...
Conflicts:
src/libstd/rt/comm.rs
2013-06-06 17:53:13 -07:00
bors
f2e6c01eaf
auto merge of #6984 : brson/rust/rtcross, r=brson
2013-06-06 17:49:38 -07:00
James Miller
de27064d84
Disallow negative counts in repeat expressions
2013-06-07 12:30:44 +12:00
Brian Anderson
f702b900d8
mk: Fix _RUST_STAGEX variables under cross compile. Fix incoming
2013-06-06 17:27:22 -07:00
bors
d6b4fde97e
auto merge of #6982 : Aatch/rust/better-foreign-error, r=pcwalton
...
I encountered this. A straight fail is not useful and most people aren't going to happily spelunk in `parser.rs`
2013-06-06 16:52:36 -07:00
James Miller
9c8d0e375e
Provide an actual error when expanding macros to foreign items
2013-06-07 11:28:38 +12:00
bors
6a09b6f0c3
auto merge of #6981 : jbclements/rust/fold-traverses-macros, r=catamorphism
...
Fixes bug #2888 . Includes test cases
r? @catamorphism
2013-06-06 15:43:35 -07:00
bors
145279709d
auto merge of #6980 : Kimundi/rust/iterator-collect3, r=thestinger
2013-06-06 14:46:41 -07:00
John Clements
eff49fc48b
implement fold traversing macros
2013-06-06 14:21:07 -07:00
John Clements
2d59ebadb9
add test cases for fold traversing macros
2013-06-06 14:21:07 -07:00
bors
533425e242
auto merge of #6053 : nikomatsakis/rust/fixme-2699, r=thestinger
...
r? @jld or @graydon
The calculation looks right to me, but perhaps one of you two can double check. You two seem like you are doing the most recent work in this sort of area.
2013-06-06 13:52:41 -07:00
Marvin Löbel
cac4891154
Fixups
2013-06-06 22:40:35 +02:00
Marvin Löbel
070015468d
Removed IteratorUtil::to_vec and iter::to_vec
2013-06-06 22:11:48 +02:00