Mahmut Bulut
27fb3fe90d
stage2 run-pass test for #3753
2012-10-24 18:32:36 +03:00
Patrick Walton
61bb3571a5
rustc: Implement construction of monomorphic struct-like variants. r=nmatsakis
2012-10-23 19:23:46 -07:00
Brian Anderson
d29962f0eb
Move futures to std
2012-10-23 14:46:49 -07:00
Brian Anderson
3e4b2bd2b2
core: Use PortOne instead of Future in future_result
2012-10-23 14:21:15 -07:00
Tim Chevalier
11e92f37c1
Remove uses of binary move - <- - from tests and libraries
2012-10-23 12:10:03 -07:00
Brian Anderson
b2af873b76
Merge remote-tracking branch 'luqmana/incoming'
2012-10-22 21:44:53 -07:00
Patrick Walton
ec1c60c4d6
rustc: Implement generic cross-crate trait inheritance
2012-10-22 18:00:48 -07:00
Simon BD
cc0f2c6bb2
Merge remote-tracking branch 'original/incoming' into incoming
2012-10-22 18:33:41 -05:00
Brian Anderson
763a8e7b47
xfail-fast issue-3656
2012-10-22 14:04:22 -07:00
Brian Anderson
2eea07be11
Merge pull request #3826 from jdm/doublefail
...
Fix ICE stemming from use of unique pointers in unreachable blocks.
2012-10-22 11:32:30 -07:00
Tim Chevalier
dd66e7549b
Preliminary support for labeled break/continue for loop
s
...
This patch adds preliminary middle-end support (liveness and trans)
for breaks and `loop`s to `loop` constructs that have labels.
while and for loops can't have labels yet.
Progress on #2216
2012-10-22 09:20:37 -07:00
Tim Chevalier
46d4bbbae4
Simplify the AST representation of ty param bounds
...
Change ast::ty_param_bound so that all ty param bounds are represented
as traits, with no special cases for Copy/Send/Owned/Const.
typeck::collect generates the special cases.
A consequence of this is that code using the #[no_core] attribute
can't use the Copy kind/trait. Probably not a big deal?
As a side effect, any user-defined traits that happen to be called
Copy, etc. in the same module override the built-in Copy trait.
r=nmatsakis
Closes #2284
2012-10-22 09:01:12 -07:00
Niko Matsakis
42c05fe642
Correct propagation of mutability from components to base in borrowck
...
Fixes #3828 .
2012-10-21 23:52:36 -07:00
Luqman Aden
e1db959ec2
rustc: add new intrinsics - atomic_cxchg{_acq,_rel}
2012-10-21 22:23:50 -04:00
Josh Matthews
7c7980196c
Fix ICE stemming from use of unique pointers in unreachable blocks.
2012-10-21 03:43:41 -04:00
Brian Anderson
837875711a
Remove obsolete fixed-length string test
2012-10-20 17:50:46 -07:00
Brian Anderson
8a8fbe3dce
Remove remaining uses of old fixed-length vec syntax
2012-10-20 17:50:46 -07:00
Brian Anderson
f3df50f67f
Parse and report obsolete fixed-length vector syntax
2012-10-20 17:50:46 -07:00
Ben Striegel
684d945ab7
Fix a pprint test for fixed-length vecs
2012-10-20 17:50:46 -07:00
Ben Striegel
ac81fff229
Remove old fixed-length vector syntax
2012-10-20 17:50:46 -07:00
Brian Anderson
15777de957
Fix run-pass/issue-2895 for 32-bit archs
2012-10-20 14:52:31 -07:00
Tim Chevalier
10612ee30c
Remove superfluous by-ref in option::get, option::get_default, option::expect
...
Superficial change, no review.
2012-10-19 11:38:28 -07:00
Patrick Walton
754704ea94
rustc: Implement intra-crate static methods on anonymous trait implementations. r=nmatsakis
2012-10-18 14:29:18 -07:00
Patrick Walton
fa38c12901
test: Fix failing tests. r=rustbot
2012-10-18 12:09:40 -07:00
Philipp Brüschweiler
e7e1bab27f
libsyntax: refactor the parser to consider foreign items as items
...
parse_item_or_view_item() would drop visibility if none of the conditions
following it would hold. This was the case when parsing extern {} blocks,
where the function was only used to parse view items, but discarded the
visibility of the first not-view item.
2012-10-17 15:34:55 -07:00
Tim Chevalier
7f12cc4e63
Merge pull request #3716 from Blei/fix-3656
...
rustc: fix size computation of structs for the FFI
2012-10-17 11:00:36 -07:00
Patrick Walton
4dc67c5e6a
rustc: Implement intra-crate static methods on anonymous trait implementations.
2012-10-16 12:22:56 -07:00
Tim Chevalier
b38092e9a2
In ty::normalize_ty, don't replace self_regions with None
...
Instead, replace with re_static. This was causing ty::subst to
fail when called from trans::type_of::type_of.
Already discussed with nmatsakis and it's a small change, so
no review.
Closes #3447
2012-10-15 17:46:09 -07:00
Tim Chevalier
bbc46d527d
Add test for Issue 2823
2012-10-15 17:12:42 -07:00
Tim Chevalier
d29328617d
Add test case for Issue 2895
2012-10-15 17:09:05 -07:00
Tim Chevalier
7d84505654
Error out in resolve if structs try to capture type parameters
...
Closes #3214
2012-10-15 16:27:53 -07:00
Patrick Walton
91ae5412d8
rustc: Merge module and type namespaces. r=brson
2012-10-15 15:35:36 -07:00
Tim Chevalier
c5b82a65e9
Add test cases for #3668
...
Previous commits fix the issue.
Closes #3668
2012-10-15 14:41:09 -07:00
Tim Chevalier
4f9e7babeb
Un-xfail test for #3521 ; it works now
...
Closes #3521
2012-10-15 14:18:15 -07:00
Patrick Walton
c886629d4f
rustc: Implement monomorphic default methods. r=nmatsakis
2012-10-15 14:14:05 -07:00
Niko Matsakis
2a1aa9fb53
Check whether loans conflict with old loans or with themselves.
...
Along the way, convert from dvec-of-dvec representation to track loans in scope
to just a single flattened list. It's more convenient.
Fixes #3765 . r+ pcwalton.
2012-10-15 13:37:50 -07:00
Tim Chevalier
7237268b70
Allow enum discriminator exprs to refer to declared consts
...
Also some work towards #3521
Closes #2428
2012-10-15 12:28:29 -07:00
Tim Chevalier
f6211ab187
Add various test cases (xfailed)
2012-10-15 12:00:32 -07:00
Erick Tryzelaar
ab89b5c294
libstd: make Serializer a trait-level typaram
2012-10-15 08:25:23 -07:00
Tim Chevalier
632d60691a
Test that functional struct update exprs get rejected if...
...
...they require copying noncopyable fields.
2012-10-12 20:43:38 -07:00
Tim Chevalier
71dbbe145c
Make moves explicit in rfail tests
2012-10-12 20:43:38 -07:00
Tim Chevalier
3ebd878f4a
Make moves explicit in rpass tests
2012-10-12 20:43:38 -07:00
Tim Chevalier
2145348090
Make moves explicit in cfail tests
2012-10-12 20:43:37 -07:00
Tim Chevalier
f5f3a75b65
Make moves explicit in bench tests
2012-10-12 20:43:37 -07:00
Tim Chevalier
e18c6bb3b6
Make moves explicit in aux test files
2012-10-12 20:43:37 -07:00
Tim Chevalier
ea5e3d21ff
Make moves explicit in doc examples
...
Had to remove the buffalo example. It was awkward to update for
explicit moves.
2012-10-12 20:43:37 -07:00
Niko Matsakis
98887cc7ee
remove ctor from ast (take 2) (no review: just dead code removal)
2012-10-12 19:46:37 -07:00
Niko Matsakis
cb55e246ba
Use the Nth impl when translating a static method call, instead
...
of the 0th. 0th is only correct when there are no bound tps
on the trait.
Fixes #3741 .
2012-10-12 17:46:43 -07:00
Graydon Hoare
57b4d10ff6
bump version to 0.5.
2012-10-12 16:41:32 -07:00
Kevin Cantu
1bede1f5e0
Replace several common macros of the form #m[...] with m!(...)
...
This commit replaces nearly all remaining uses of #fmt, #debug, #error,
and #info, and fixes some error messages...
2012-10-12 14:14:48 -07:00
Tim Chevalier
693866d75e
Change FIXME number
2012-10-11 18:09:55 -07:00
Tim Chevalier
44bffd2059
Revert "Use a constant vector for the sudoku board, delete a FIXME"
...
This reverts commit 06d0bf7555
.
2012-10-11 18:08:58 -07:00
Tim Chevalier
55b528484d
Re-xfail two tests that I tried to resurrect (no time right now)
2012-10-11 17:59:33 -07:00
Tim Chevalier
2d116db578
Use move instead of ref in select-macro
2012-10-11 17:59:29 -07:00
Tim Chevalier
dd54431df6
Fix pipe-select-macro
2012-10-11 17:59:14 -07:00
Tim Chevalier
3c1ff31f4a
Un-XFAIL task-compare
2012-10-11 17:03:56 -07:00
Tim Chevalier
5a849ea8ad
Use match move in select-macro, get rid of a FIXME
2012-10-11 17:03:48 -07:00
Tim Chevalier
b24cba877d
Un-XFAIL reflect-visit-type
2012-10-11 17:03:29 -07:00
Tim Chevalier
f1de001d69
Annotate FIXMEs in reflect-visit-data
2012-10-11 17:03:02 -07:00
Tim Chevalier
c090dcad84
Uncomment nested module in test, delete a FIXME
2012-10-11 17:02:38 -07:00
Tim Chevalier
06d0bf7555
Use a constant vector for the sudoku board, delete a FIXME
2012-10-11 17:02:12 -07:00
Tim Chevalier
668b39cb5c
Use match move in pingpong, delete a FIXME
2012-10-11 17:01:55 -07:00
Tim Chevalier
5a8ba073bc
Make to_str pure and fix const parameters for str-mutating functions
...
Two separate changes that got intertwined (sorry):
Make to_str pure. Closes #3691
In str, change functions like push_char to take an &mut str instead of
an &str. Closes #3710
2012-10-11 14:17:59 -07:00
Philipp Brüschweiler
25096a212a
rustc: fix size computation of structs for the FFI
...
It didn't take alignment into account.
Fixes #3656 .
2012-10-10 22:40:58 +02:00
Tim Chevalier
a477c5af20
Revert "cap-clause-use-after-move: modernize error msg"
...
This reverts commit bbda995bfe
.
2012-10-08 13:11:16 -07:00
Tim Chevalier
2cee21462f
Merge branch 'incoming' into snap-2012-10-05
2012-10-08 10:48:07 -07:00
Niko Matsakis
bbda995bfe
cap-clause-use-after-move: modernize error msg
2012-10-08 08:57:37 -07:00
Niko Matsakis
ed3689d57c
remove ctor from ast
2012-10-08 06:36:42 -07:00
Erick Tryzelaar
eb626e7119
Remove the old serializers (needs snapshot)
2012-10-07 17:20:19 -07:00
Erick Tryzelaar
d301dd3686
remove the old auto_serialize syntax extension
2012-10-07 14:56:18 -07:00
Simon BD
0e3bec0ced
Merge remote-tracking branch 'original/incoming' into incoming
2012-10-06 13:15:18 -05:00
Tim Chevalier
f96a2a2ca1
Remove by-mutable-ref mode from the compiler
...
and test cases. Closes #3513
2012-10-05 22:45:50 -07:00
Patrick Walton
937f8f4067
test: XFAIL trait-inheritance-simple because of suspected 32-bit brokenness
2012-10-05 17:18:52 -07:00
Patrick Walton
04497ea7b9
rustc: Implement simple uses of &trait
2012-10-05 16:57:13 -07:00
Tim Chevalier
e16dbb7888
Demode some code using by-mutbl-ref; warn about by-mutbl-ref
...
The parser now warns about use of mutbl-ref mode, though it's kind
of a lie since this commit doesn't remove support for the mode.
Changed move_val_init to have stage0 and stage1/2 versions, the latter of
which is demoded.
Changed the type that the typechecker expects the move_val_init
intrinsic to have. After this is pushed, I can make a new snapshot,
which will remove the need for the stage0 versions.
2012-10-05 15:37:01 -07:00
Patrick Walton
1b732145ec
rustc: Implement simple trait inheritance.
...
Generic trait inheritance, cross-crate trait inheritance, and vtable-based
trait inheritance don't work yet.
2012-10-05 11:52:08 -07:00
Tim Chevalier
8fc60af441
Remove by-copy mode from std, mostly
...
One instance remains in net_tcp due to a foreign fn. Lots of
instances remain in serialization.rs, but IIRC that is being removed.
I had to do unholy things to task-perf-word-count-generic to get it
to compile after demoding pipes. I may well have messed up its
performance, but it passes.
2012-10-04 19:59:47 -07:00
Tim Chevalier
fe12da0864
De-mode comm::Chan
2012-10-04 16:48:57 -07:00
Brian Anderson
edc317b821
Remove arg vectors from main functions. Stop supporting them.
2012-10-04 15:07:49 -07:00
Brian Anderson
83fdeddb91
xfail-pretty reexport-star
2012-10-03 22:10:52 -07:00
Patrick Walton
c2fc7316a9
test: Fix error message in vtable-res-trait-param
2012-10-03 21:13:58 -07:00
Simon BD
efcd2385ea
Merge remote-tracking branch 'original/incoming' into incoming
...
Conflicts:
src/libstd/json.rs
src/libstd/sort.rs
2012-10-03 21:47:09 -05:00
Patrick Walton
d936773e56
test: Add a test case for "pub use a::*"
2012-10-03 17:03:29 -07:00
Brian Anderson
72b7a7707f
test: Use println instead of debug in hello.rs
2012-10-03 14:29:59 -07:00
Tim Chevalier
f33539e446
Remove uses of + mode from libstd
...
More or less the same as my analogous commit for libcore. Had
to remove the forbid(deprecated_modes) pragma from some files -- will
restore it after the snapshot.
2012-10-03 14:05:51 -07:00
Graydon Hoare
c31a88c7f4
De-export the submodules of task. Part of #3583 .
2012-10-02 16:32:00 -07:00
Tim Chevalier
f78cdcb636
Removing explicit uses of + mode
...
This removes most explicit uses of the + argument mode. Pending a
snapshot, I had to remove the forbid(deprecated_modes) pragma from
a bunch of files. I'll put it back!
+ mode still has to be used in a few places for functions that get
moved (see task.rs)
The changes outside core and std are due to the to_bytes trait and
making the compiler (with legacy modes on) agree with the libraries
(with legacy modes off) about modes.
2012-10-02 14:31:39 -07:00
Patrick Walton
9284179311
libstd: Switch off legacy modes in both core and std.
2012-10-02 12:20:06 -07:00
Erick Tryzelaar
2569adc5ea
Split auto_serialize2 into two macros
2012-10-01 20:44:30 -07:00
Erick Tryzelaar
372c7de201
Add struct to auto_serialize2 test
2012-10-01 20:44:30 -07:00
Erick Tryzelaar
81423a3866
Add deserializable and more types to serialization2
2012-10-01 20:43:59 -07:00
Erick Tryzelaar
0a950f394d
test: un-xfail the auto_serialize for boxes test
2012-10-01 20:43:59 -07:00
Tim Chevalier
b18320446e
Move over to calling ptr::addr_of
...
Everything should now call ptr::addr_of instead of
ptr::p2::addr_of. Only the pipes macro code when compiled
by stage0 will call ptr::p2::addr_of. Needs a snapshot to get
rid of that.
2012-10-01 15:12:09 -07:00
Gareth Daniel Smith
1c76d189c0
When a vec/str bounds check fails, include the bad index and the length of the str/vec in the fail message.
2012-09-30 14:55:56 -07:00
Tim Chevalier
3639d38d5c
Add a demoded version of ptr::addr_of
...
Currently, the new version is ptr::p2::addr_of and the old one is
ptr::addr_of. This is kind of cheesy, but I need a snapshot before I
can ditch the old version, since the pipe compiler generates calls to
addr_of.
core is converted over to use the new version, std is not.
2012-09-28 22:19:01 -07:00
Tim Chevalier
90f959aad4
Fix graph500-bfs
2012-09-28 19:26:24 -07:00
Graydon Hoare
f311bb38cd
Fix benchmarks.
2012-09-28 18:26:36 -07:00
Tim Chevalier
a3a257cc3b
Demode iter::foldl and friends
2012-09-28 17:57:02 -07:00
Tim Chevalier
fec96b2ae0
Demoding in iter: any, all, map_to_vec, flat_map_to_vec, filter_to_vec
2012-09-28 17:44:15 -07:00
Niko Matsakis
21519bc7e0
demode vec
2012-09-28 13:27:45 -07:00