Commit Graph

19266 Commits

Author SHA1 Message Date
James Miller
81cf72c264 Finish up Type refactoring 2013-06-22 12:35:35 +12:00
James Miller
57a75374d6 Initial Type Refactoring done 2013-06-22 12:32:11 +12:00
James Miller
befbd3a680 Add the rest of the atomic operations.
This makes the handling of atomic operations more generic, which
does impose a specific naming convention for the intrinsics, but
that seems ok with me, rather than having an individual case for
each name.

It also adds the intrinsics to the the intrinsics file.
2013-06-22 12:26:33 +12:00
James Miller
fd83b92b59 More Type refactorings 2013-06-22 12:26:33 +12:00
James Miller
1968622798 Start refacting LLVM Type handling 2013-06-22 12:24:21 +12:00
James Miller
66d8e8b481 Make log_fn_time a method 2013-06-22 12:24:21 +12:00
James Miller
b4b2cbb299 Change calls for TypeName stuff to methods 2013-06-22 12:24:20 +12:00
James Miller
3dbdb3a364 Methodize TypeNames 2013-06-22 12:24:20 +12:00
bors
f886520d24 auto merge of #7219 : sstewartgallus/rust/cleanup, r=graydon 2013-06-21 16:01:59 -07:00
Honza Strnad
f3966e4a08 Added filtered method for Option type 2013-06-21 21:27:58 +02:00
bors
544f6159f7 auto merge of #7259 : dotdash/rust/ir_improvement, r=graydon
The changes in these commits improve the IR codegen by removing unnecessary copies for certain function call arguments and stopping to allocate return values for functions returning nil. They reduce compile times by about 10% in total.
2013-06-21 07:52:55 -07:00
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
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
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
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
Brian Anderson
fb2765eebd rusti: Disable tests on macos harder 2013-06-18 22:17:58 -07:00