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
Simon BD
4f9f1c5f9a
Switch order of merge_sort arguments in some benchmarks
2012-09-27 20:44:31 -05:00
Patrick Walton
7b0ed94bdc
rustc: Make enum export visibility inherit properly
2012-09-27 17:43:09 -07:00
Tim Chevalier
7e7411e620
Demode rand
2012-09-27 11:32:09 -07:00
Brian Anderson
010f805a7b
Unbreak test/bench/task-perf-word-count-generic
2012-09-26 19:30:09 -07:00
Brian Anderson
87a72567f0
Unbreak run-pass/issue-2904 more
2012-09-26 18:41:02 -07:00
Brian Anderson
dd80cb22e3
Fix test/run-fail/issue-2156
2012-09-26 18:10:35 -07:00
Niko Matsakis
67a8e7128a
Demode vec::push (and convert to method)
2012-09-26 18:02:07 -07:00
Brian Anderson
26a8fe3553
Fix test/run-pass/issue-2904
2012-09-26 17:03:02 -07:00
Erick Tryzelaar
49d00b2f22
libstd: port json over to serialization2
2012-09-26 16:29:41 -07:00
Erick Tryzelaar
c0b9986c8f
libstd: change serialization2 to take &self argument methods
...
Unfortunately this trips over issue (#3585 ), where auto-ref isn't
playing nicely with @T implementations. Most serializers don't
care, but prettyprint2 won't properly display "@" until #3585 is
fixed.
2012-09-26 16:20:24 -07:00
Erick Tryzelaar
d2506a1787
test: Add a test for auto_serialize2
2012-09-26 16:20:24 -07:00
Tim Chevalier
101bc62ad9
Revert "fix modes on dtors"
...
This reverts commit d38b97a170
.
(Accidentally checked this in, oops)
2012-09-26 10:43:11 -07:00
Tim Chevalier
d38b97a170
fix modes on dtors
2012-09-26 10:42:11 -07:00
Vincent Belliard
ef23d77633
fix issue #3535 and add colon between mode and type when dumping funcion prototype
2012-09-26 07:48:19 -07:00
Tim Chevalier
95bc32dc4f
Fix borked tests
2012-09-25 22:13:05 -07:00
Tim Chevalier
e19e628b19
Demode iter-trait
2012-09-25 22:13:05 -07:00
Tim Chevalier
3023bd8729
Demode dvec
2012-09-25 18:27:55 -07:00
Brian Anderson
d05e2ad66c
Demode core::result
2012-09-25 17:48:22 -07:00
Brian Anderson
62649f0412
Check more things with deprecated_modes
2012-09-25 17:41:29 -07:00
Patrick Walton
954eee5310
test: Remove various box annihilator tests
2012-09-25 17:06:01 -07:00
Tim Chevalier
e85a3d8247
Demode Num trait and impls
2012-09-25 15:52:41 -07:00
Graydon Hoare
fdd48dd903
Respect privacy qualifiers on view items, add to import resolutions.
2012-09-25 15:31:02 -07:00
Niko Matsakis
12a0401d84
Change method res to try autoref more often. Fixes #3585 .
2012-09-25 15:22:38 -07:00
Niko Matsakis
267ab11cca
use + mode for (almost) everything when not using legacy modes
2012-09-25 12:47:35 -07:00
Graydon Hoare
546f3dbbf5
Build the export_map2 from visibility markers, unless #[legacy_exports];
2012-09-24 17:29:32 -07:00
Brian Anderson
afd91f8a56
Register snapshots. Remove redundant Eq impls, Makefile hacks
2012-09-23 23:01:49 -07:00
Brian Anderson
4a78f9b166
core: Demode option
2012-09-23 17:15:00 -07:00
Brian Anderson
92752a462a
xfail-test run-fail/out-of-stack-managed-box
2012-09-23 17:12:59 -07:00
Niko Matsakis
0a26edca75
Fix trans for region patterns (&P)
2012-09-23 13:30:20 -05:00
Niko Matsakis
ba3eebd41d
Make it illegal to use modes in a fn signature with providing
...
an explicit variable name. (Step one to changing the defaults)
First step to #3535
2012-09-23 13:30:13 -05:00
Brian Anderson
655f7f844c
Remove bogus comment
2012-09-21 21:55:56 -07:00
Brian Anderson
b10e575217
Add tests for out-of-stack box leak #2555
2012-09-21 21:50:02 -07:00
Niko Matsakis
3d59ac3a19
De-mode vec::map, vec::eachi, vec::rev_each, vec::rev_eachi
2012-09-21 19:13:55 -07:00
Patrick Walton
d48396c986
libcore: De-mode str
2012-09-21 18:37:06 -07:00
Graydon Hoare
dffe188991
Install new pub/priv/export rules as defaults, old rules accessible under #[legacy_exports];
2012-09-21 18:11:43 -07:00
Brian Anderson
3e9284d128
core: Demode sys
2012-09-20 15:37:55 -07:00
Niko Matsakis
38595e6664
remove cfg(stage0) version of Eq, not needed for tests
2012-09-20 14:34:22 -07:00
Graydon Hoare
6e9f997f8e
Fix ord test breakage.
2012-09-20 14:00:33 -07:00
Patrick Walton
9117dcb968
rustc: De-mode all overloaded operators
2012-09-20 09:48:05 -07:00
Niko Matsakis
cfed923600
demode the each() method on vec and other iterables.
2012-09-19 17:03:01 -07:00
Graydon Hoare
5e41739562
Remove final bits of residual hokey-hash functions. Close #1616 .
2012-09-19 16:35:53 -07:00
Graydon Hoare
1ffd90edbc
Remove redundant hashmap constructor functions.
2012-09-19 15:51:44 -07:00
Brian Anderson
afdd8204ea
xfail-fast another legacy_mode test
2012-09-19 14:50:21 -07:00
Philipp Brüschweiler
d3e0a06578
V2: now with more locks!
2012-09-19 14:01:53 -07:00
Philipp Brüschweiler
68e755b1c2
core: Allocate threads on demand, not on scheduler startup
...
API change: rust_kernel::create_scheduler() or
rust_scheduler::rust_scheduler() respecitevly now take ownership of the
launch factory argument, it is needed to create new threads on demand.
Also renames rustrt::sched_threads() to rustrt::rust_sched_threads() for
consistency. Added rustrt::rust_max_sched_threads() to return the
maximal number of scheduled threads of the current scheduler.
Fixes #3493 .
2012-09-19 14:01:53 -07:00
Brian Anderson
35a9353774
xfail-fast the legacy_mode run-pass tests
2012-09-19 13:59:58 -07:00
Niko Matsakis
9cf271fe96
De-mode vec::each() and many of the str iteration routines
...
Note that the method foo.each() is not de-moded, nor the other
vec routines.
2012-09-19 10:52:59 -07:00
Niko Matsakis
8d4928f780
Revert "replace explicit calls to vec::each with vec::each_ref, partially demode str"
...
This reverts commit 1be24f0758
.
Not quite ready.
2012-09-18 21:41:13 -07:00
Niko Matsakis
1be24f0758
replace explicit calls to vec::each with vec::each_ref, partially demode str
2012-09-18 21:31:00 -07:00
Brian Anderson
2906f2de31
core: Rename 'unsafe' mod to 'cast'
2012-09-18 19:36:25 -07:00
Brian Anderson
a9fea86970
Tweak graph500-bfs so it pretty-prints
2012-09-18 19:25:59 -07:00
Brian Anderson
a005b1af60
Fix some broken tests
2012-09-18 18:49:23 -07:00
Brian Anderson
be490c7f81
Fix run-pass-fulldeps/qquote.rs
2012-09-18 18:46:45 -07:00
Patrick Walton
e653d493fb
rustc: Remove legacy mode inference, unless #[legacy_modes] is used
2012-09-18 15:53:04 -07:00
Brian Anderson
d53cfd225a
core: Move Exclusive and SharedMutableState to the private mod
2012-09-18 15:23:57 -07:00
Erick Tryzelaar
d0d68c6036
libcore: make a copyless io::BytesWriter
2012-09-18 12:56:57 -07:00
Brian Anderson
eb35039fe8
Change 'must' to 'should' in non_camel_case_types message
2012-09-18 12:18:00 -07:00
Brian Anderson
76c8b83efa
Consolidate tests for non_camel_case_types
2012-09-18 11:56:08 -07:00
Patrick Walton
c755449fd6
Revert "rustc: Change all non-keyword uses of "link""
...
This reverts commit 3b013cd800
.
2012-09-18 11:47:04 -07:00
Brian Anderson
2cdb23bbc0
Replace uses of 'unchecked' with 'unsafe'
2012-09-18 11:31:57 -07:00
Patrick Walton
3b013cd800
rustc: Change all non-keyword uses of "link"
2012-09-18 11:27:37 -07:00
Brian Anderson
f563c0b525
warn(non_camel_case_types) by default
2012-09-17 18:52:50 -07:00
Niko Matsakis
2469cba0b1
Make auto-slice, auto-ptr not exclusive ( fixes #3514 )
2012-09-17 11:00:50 -07:00
Niko Matsakis
48496fc1b6
add a test and correct terminology
...
newtype'd enums have 1 variant, and 1 field.
denegerate have only 1 variant but may have more fields.
2012-09-17 06:34:36 -07:00
Erick Tryzelaar
b73f801cc1
int/uint parse_buf => parse_bytes ( #3444 )
2012-09-15 13:38:41 -07:00
Niko Matsakis
4cad58c464
Fix broken assertion in regionck for code like (a[])()
2012-09-15 12:29:36 -07:00
Brian Anderson
c7e5c870f3
Remove restricted keyword tests
2012-09-14 16:16:46 -07:00
Patrick Walton
6a3756b0ba
test: Use vec::as_imm_buf in bug-2470-bounds-check-overflow.rs
2012-09-14 12:15:40 -07:00
Niko Matsakis
43924f1f9f
fix some of the broken tests (the ones that were doing the right thing)
2012-09-13 15:05:30 -07:00
Niko Matsakis
0e584f2e74
Fix bug in auto-ref on bounded type parameters
2012-09-13 13:24:34 -07:00
Niko Matsakis
e0845eb589
repr: emit closing )
for enum variants, test that nullary variants names print
2012-09-13 11:10:05 -07:00
Niko Matsakis
7e5661214a
Remove unnecessary temporary, add type annot to help inferencer (cc #2280 )
2012-09-13 09:14:49 -07:00
Brian Anderson
308ca06012
Rename str::unsafe to str::raw
2012-09-12 19:55:16 -07:00
Niko Matsakis
34bf0b9e97
trans: overhaul match bindings. No more phi, one code path for guards.
...
Fixes #3256 .
Fixes #3291 .
2012-09-12 18:15:22 -07:00
Brian Anderson
ff54ac8e59
Rename vec::unsafe to vec::raw
2012-09-12 17:45:36 -07:00
Niko Matsakis
5d540de769
fixup mutability of vec::each, make iter_bytes pure
...
also, change DVec() to work with imm vectors rather than mut ones
2012-09-12 13:29:31 -07:00
Niko Matsakis
8a8f200d10
Introduce auto adjustment table to subsume autoderef/autoref/borrowings.
...
Fixes #3261
Fixes #3443
2012-09-11 21:25:01 -07:00
Brian Anderson
3d2a74a160
Reserve 'be' as a keyword
2012-09-11 19:26:48 -07:00
Brian Anderson
ea01ee2e9e
Convert 'use' to 'extern mod'. Remove old 'use' syntax
2012-09-11 19:25:43 -07:00
Drew Willcoxon
98bd4a992c
Improve unexpected error scanner for compile-fail tests ( Closes #1476 )
2012-09-11 17:22:24 -07:00
Brian Anderson
27cc0a36b6
Promote 'struct' from a restricted keyword to a strict keyword
2012-09-11 17:15:33 -07:00
Brian Anderson
1203da3b9d
Remove priv sections from classes. Obsolete the syntax
2012-09-11 15:29:37 -07:00
Brian Anderson
298eb8c726
Convert 'import' to 'use'. Remove 'import' keyword.
2012-09-10 19:04:26 -07:00
Brian Anderson
6957af770b
Report obsolete trait lists on structs
2012-09-10 18:12:35 -07:00
Brian Anderson
73eb894305
Report obsolete class method syntax
2012-09-10 17:48:33 -07:00