Björn Steinbrink
4fb2c09541
Avoid pointless allocas for "nil" return values
...
By using "void" instead of "{}" as the LLVM type for nil, we can avoid
the alloca/store/load sequence for the return value, resulting in less
and simpler IR code.
This reduces compile times by about 10%.
2013-06-21 13:36:25 +02:00
bors
45f588e8fd
auto merge of #7200 : yichoi/rust/fix_je_mac_cross, r=brson
...
while cross-compiling, ar in cross toolchains are required.
linux is not sensitive so could not see errors.
2013-06-21 04:10:53 -07:00
bors
b0e3ffd380
auto merge of #7263 : thestinger/rust/iterator, r=graydon
2013-06-21 01:49:50 -07:00
Daniel Micay
06bec77faf
replace vec::find with the IteratorUtil method
2013-06-21 03:24:03 -04:00
Daniel Micay
883c966d5c
vec: replace position
with iter().position_
2013-06-21 03:23:59 -04:00
Daniel Micay
49c74524e2
vec: rm old_iter implementations, except BaseIter
...
The removed test for issue #2611 is well covered by the `std::iterator`
module itself.
This adds the `count` method to `IteratorUtil` to replace `EqIter`.
2013-06-21 03:20:22 -04:00
Daniel Micay
cbad1da3db
vec: remove eachi
...
replaced by the `enumerate` method from std::iterator
2013-06-21 03:20:22 -04:00
Daniel Micay
62dc4e0d4c
vec: remove each_const
...
An Iterator implementation can be made for &const [T] if it turns out
to be necessary for some use case.
2013-06-21 03:20:22 -04:00
bors
ba05af7b1c
auto merge of #7203 : msullivan/rust/default-methods, r=graydon
...
This fixes the large number of problems that prevented cross crate
methods from ever working. It also fixes a couple lingering bugs with
polymorphic default methods and cleans up some of the code paths.
Closes #4102 . Closes #4103 .
r? nikomatsakis
2013-06-20 22:28:52 -07:00
Ralph Bodenner
fd24cb7eae
Usable instructions for generating docs from source
2013-06-21 00:56:43 -04:00
Huon Wilson
769c2e5f99
Minor doc updates to reflect #[deriving(Zero)], and small release notes adjustments.
...
The `extra::fileinput` module landed just after 0.6 was released, and there are many
more derivable traits.
2013-06-21 00:55:13 -04:00
Brian Anderson
9e95bc4b19
Update AUTHORS.txt
2013-06-21 00:54:17 -04:00
Joris Rehm
87c110506d
fix text of tutorials
2013-06-21 00:53:10 -04:00
Ralph Bodenner
525933d0a3
Show defaults in rustdoc usage message
2013-06-21 00:51:28 -04:00
Brian Anderson
7d61b0083a
More 0.7 release notes
2013-06-21 00:49:15 -04:00
bors
77ae7ec8d8
auto merge of #7161 : kballard/rust/terminfo-parm-format, r=thestinger
...
Introduce support for terminfo's subset of printf-style formatting on doxXs operations.
r? @thestinger
2013-06-20 20:41:09 -07:00
Luqman Aden
41e90f2156
Add test for duplicate definitions of structs and enum struct variants.
2013-06-20 19:23:31 -04:00
Luqman Aden
31b4b53797
librustc: Don't allow enum struct variants to shadow structs.
2013-06-20 19:14:57 -04:00
Kevin Ballard
b8b2d1e5b4
Make task_rng() return @mut R instead of @@mut R
2013-06-20 15:55:43 -07:00
Michael Sullivan
1a8969f64b
Get cross crate default methods working.
...
This fixes the large number of problems that prevented cross crate
methods from ever working. It also fixes a couple lingering bugs with
polymorphic default methods and cleans up some of the code paths.
Closes #4102 . Closes #4103 .
2013-06-20 15:42:16 -07:00
Björn Steinbrink
dc262d9aa7
Avoid unnecessary scratch datums for by-copy function arguments
...
Currently, by-copy function arguments are always stored into a scratch
datum, which serves two purposes. First, it is required to be able to
have a temporary cleanup, in case that the call fails before the callee
actually takes ownership of the value. Second, if the argument is to be
passed by reference, the copy is required, so that the function doesn't
get a reference to the original value.
But in case that the datum does not need a drop glue call and it is
passed by value, there's no need to perform the extra copy.
2013-06-20 23:53:26 +02:00
bors
f348465283
auto merge of #7128 : yichoi/rust/fix_sometc, r=brson
...
- Fix stat struct for Android (found by SEGV at run-pass/stat.rs)
- Adjust some test cases to rpass for Android
- Modify some script to rpass for Android
2013-06-20 11:35:34 -07:00
Huon Wilson
91362bd220
extra: Add a testcase for #7256 .
2013-06-21 01:07:05 +10:00
James Miller
adeb7e77cc
Update snapshots.txt
2013-06-21 02:45:35 +12:00
James Miller
229a88217f
librust: cleanup warnings (except 1)
2013-06-21 02:43:03 +12:00
James Miller
4e3b196670
libextra: cleanup warnings
2013-06-21 02:43:03 +12:00
James Miller
b6ecf60d89
libsyntax: cleanup warnings
2013-06-21 02:43:03 +12:00
James Miller
0702e53576
libstd: cleanup warnings
2013-06-21 02:43:02 +12:00
James Miller
3bc4d1a120
Remove all #[cfg(stage0)]-protected code
...
New snapshot means this can all go. Also removes places that have
comments that say they are workarounds for stage0 errors.
2013-06-21 02:43:02 +12:00
James Miller
6759ce4fd2
_Actually_ xfail debuginfo tests
2013-06-21 00:23:42 +12:00
James Miller
3acdbfd2c8
ignore inherited environment test under valgrind r=snapshot
2013-06-20 22:43:21 +12:00
James Miller
f5036c24df
xfail box-related debug-info tests r=snapshot
2013-06-20 22:03:05 +12:00
Michael Woerister
6eb3c0f30d
debuginfo.rs: Removed trailing whitespace.
2013-06-20 11:50:09 +02:00
Michael Woerister
60474f395c
debuginfo.rs: Explained why a function is called although one could think it should not be.
2013-06-20 11:50:09 +02:00
Michael Woerister
38743f51ad
debuginfo.rs: Removed some static constants not used anymore.
2013-06-20 11:50:09 +02:00
Michael Woerister
290d35312a
Reordered debuginfo.rs and commented public fns
2013-06-20 11:50:09 +02:00
Michael Woerister
f1bd3e7ca2
Fixed compiler warnings about unnecessary string allocations in debuginfo.rs
2013-06-20 11:50:09 +02:00
Michael Woerister
5d5311dc74
Added overview of the debuginfo module at the beginning of debuginfo.rs.
2013-06-20 11:50:09 +02:00
James Miller
7375e94289
core -> extra for mac
2013-06-20 20:47:22 +12:00
James Miller
82ba030a4f
Ignore rustpkg tests
2013-06-20 18:07:06 +12:00
James Miller
433c86554c
Fix update snapshot script for rename
2013-06-20 15:10:08 +12:00
Luqman Aden
73c1839579
libsyntax: Remove drop
as a keyword.
2013-06-20 14:34:22 +12:00
Brian Anderson
b7a6919899
rustc: Dispose of LLVM passes in test cases
2013-06-19 15:18:25 -07:00
Ben Blum
3ba8404c88
Oops, hide 'unless once fn' error message hint behind -Z once-fns too.
2013-06-19 16:04:18 -04:00
Ben Blum
643be38cfe
Hide the once-move-out privilege for stack fns behind '-Z once-fns'
2013-06-19 15:53:05 -04:00
Ben Blum
c1f037e6ac
Add tests for once functions ( #2549 ).
2013-06-19 14:25:51 -04:00
Ben Blum
1496216db6
Permit moving out of captured upvars in once fns. Close #2549 .
2013-06-19 14:25:51 -04:00
Ben Blum
2c7903d599
Consume once fns when calling them ( #2549 ).
2013-06-19 14:25:51 -04:00
Philipp Brüschweiler
8066dfd4ad
syntax::diagnostics: Color the ^~~~ in green for better visibility
...
Fixes #7164 .
2013-06-19 13:43:19 +02:00
Brian Anderson
1120f8c1e5
std::rt: Work around a dynamic borrowck bug
2013-06-18 23:20:53 -07:00