Commit Graph

17969 Commits

Author SHA1 Message Date
Tim Chevalier
c42f1218a0 rustpkg: Handle sysroot more correctly
In rustpkg, pass around sysroot; in rustpkg tests, set the sysroot
manually so that tests can find libcore and such.

With bonus metadata::filesearch refactoring to avoid copies.
2013-05-03 16:48:44 -07:00
Tim Chevalier
376a5526a7 tidy 2013-05-03 16:06:07 -07:00
Tim Chevalier
4d4cabff9e rustpkg: Implement install command
The install command should work now, though it only installs
    in-place (anything else has to wait until I implement RUST_PATH).

Also including:
    core: Add remove_directory_recursive, change copy_file

    Make copy_file preserve permissions, and add a remove_directory_recursive
    function.
2013-05-03 16:06:07 -07:00
bors
517bfc91d1 auto merge of #6200 : catamorphism/rust/issue-5358, r=catamorphism
r? @nikomatsakis Previously, rustc would ICE if you matched on an enum-typed thing
with a structure pattern. Error out correctly. This will close #5358
2013-05-03 14:27:36 -07:00
Alex Crichton
24cda9fbc2 Remove pub from core::{unicode,cmath,stackwalk,rt} 2013-05-03 17:10:32 -04:00
Niko Matsakis
be08c3e514 rustc: add rooting, write-guards to slices etc 2013-05-03 16:27:16 -04:00
Niko Matsakis
c15fa3a02a Be more careful about the order in which we read the next field
during task annihilation, since it is easy to tread on freed memory.
2013-05-03 13:07:28 -07:00
Tim Chevalier
32b3d3e9eb tidy 2013-05-03 13:03:53 -07:00
Tim Chevalier
13df2ea69c rustc: Handle struct patterns where the expected type is an enum
Previously, rustc would ICE if you matched on an enum-typed thing
with a structure pattern. Error out correctly.
2013-05-03 13:03:53 -07:00
bors
bfd3cd8171 auto merge of #6217 : Sodel-the-Vociferous/rust/export-ToBytes, r=graydon 2013-05-03 13:00:47 -07:00
Luqman Aden
832f7b758f librustc: Add argument to allow choosing "linker" 2013-05-03 12:53:01 -07:00
Niko Matsakis
f3a6ea2643 lang: um, actually set locking bits! this code got lost. 2013-05-03 15:12:04 -04:00
bors
4332f8188b auto merge of #6216 : Sodel-the-Vociferous/rust/dralston-6146, r=graydon
cc #6146
2013-05-03 11:33:38 -07:00
bors
9a31cdb9bf auto merge of #6213 : kud1ing/rust/patch-1, r=graydon
...re/index.html
2013-05-03 10:21:37 -07:00
Felix S. Klock II
4dd0fa6876 Make build products depend on their target directories.
This is an attempt to address Issue #3326 by adding [*order-only*][1]
prerequsites of each build product on the directory where it is to go.
It is important that the prerequisites be order-only, since the
timestamp on a parent directory is not relevant to whether a product
is out of date; the parent directory merely needs to exist.

(This use case of generating target directories was provided as an
[example][2] of how order-only prequisites are used.)

[1]: http://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html

[2]: http://www.kolpackov.net/pipermail/notes/2004-January/000001.html
2013-05-03 18:53:47 +02:00
Niko Matsakis
e7d96934c1 Correct mismatch between the way that pattern ids and expression ids map to types (pattern ids map to the input type, expression ids map to the output type) 2013-05-03 12:29:24 -04:00
bors
79aeb529d5 auto merge of #6046 : brson/rust/io, r=graydon
r? @pcwalton

Sorry this is so big, and sorry the first commit is just titled 'wip'.

Some interesting bits

* [LocalServices](f9069baa70) - This is the set of runtime capabilities that *all* Rust code should expect access to, including the local heap, GC, logging, unwinding.
* [impl Reader, etc. for Option](5fbb0949a5) - Constructors like `File::open` return Option<FileStream>. This lets you write I/O code without ever unwrapping an option.

This series adds a lot of [documentation](https://github.com/brson/rust/blob/io/src/libcore/rt/io/mod.rs#L11) to `core::rt::io`.
2013-05-03 09:09:40 -07:00
Young-il Choi
84bdd05acc compiletest: fix decision rule to run and cleanup 2013-05-04 00:49:18 +09:00
Young-il Choi
9ecb97ae58 mk: install.mk directory argument pass for install-runtime-target 2013-05-04 00:47:54 +09:00
Young-il Choi
35214d3c6c configure: CFG_ADB for adb added 2013-05-04 00:46:52 +09:00
bors
d9c7d0bc93 auto merge of #6185 : gifnksm/rust/prelude-from_str, r=graydon
`core::prelude`  re-exports `core::to_str::ToStr`, but doesn't re-export `core::from_str::FromStr`.
That is inconsistent.
2013-05-03 08:15:38 -07:00
Björn Steinbrink
2e3e0c0892 Avoid needless creation of unique strings in fmt!()
Only the first portion has to be owned, as it acts as the buffer for the
constructed string. The remaining strings can be static.
2013-05-03 12:26:45 +02:00
Niko Matsakis
34024353e8 Change borrow debugging so it is disabled by -O 2013-05-03 05:42:00 -04:00
Daniel Ralston
47050c499a FIX: Export to_bytes::ToBytes 2013-05-03 02:25:02 -07:00
bors
213f7b24cc auto merge of #6207 : sanxiyn/rust/tc-big, r=thestinger 2013-05-03 01:36:37 -07:00
Daniel Ralston
02889f7507 Add core::cmp::Equiv to prelude 2013-05-03 01:22:52 -07:00
bors
984180c600 auto merge of #6204 : pcwalton/rust/uninhabited-enum-cast, r=catamorphism
r? @catamorphism
2013-05-03 00:12:37 -07:00
gifnksm
e34a7ecbab Remove extra #[cfg(stage0)] 2013-05-03 15:57:05 +09:00
kud1ing
f45c6b878f Add a brief description to show up in http://static.rust-lang.org/doc/core/index.html 2013-05-03 09:20:01 +03:00
bors
2ae44a07a9 auto merge of #6212 : brson/rust/xfail-flatpipes, r=brson
This is preventing a snapshot. Filed #6211
2013-05-02 22:51:38 -07:00
Brian Anderson
76f7207af2 std: xfail test_serializing_pipes 2013-05-02 22:18:16 -07:00
bors
87c46b548a auto merge of #6206 : sanxiyn/rust/mach-sty, r=thestinger 2013-05-02 21:42:36 -07:00
Brian Anderson
6c478c7de8 Merge remote-tracking branch 'brson/io' into incoming
Conflicts:
	mk/rt.mk
	src/libcore/run.rs
2013-05-02 20:51:56 -07:00
bors
b37a685958 auto merge of #6201 : pcwalton/rust/inhtwama-serializer, r=graydon
This PR removes mutable fields from the serializer and makes the encoder and decoder use INHTWAMA properly (i.e. `&mut self`).

r? @graydon
2013-05-02 20:39:36 -07:00
bors
baa1c1834f auto merge of #6140 : Dretch/rust/run-with-rust, r=brson
Even more of `core::run` could be rust-ified -- I believe that access to the C extern environ can be done with rust now. I did not do this because some special casing is needed for OSX and I don't have a mac I can test with.

I think this will also fix #6096.
2013-05-02 19:15:36 -07:00
Young-il Choi
17b368fd22 mk: configurable android test directory 2013-05-03 11:14:01 +09:00
Brian Anderson
f8dffc6789 core: Wire up the unwinder to newsched again
This was some merge fallout
2013-05-02 19:13:56 -07:00
Brian Anderson
db6a62c537 rustc: Drop the visitor object from the visitor glue
Recent demoding makes the visitor glue leak. It hasn't shown up in tests
because the box annihilator deletes the leaked boxes. This affects the
new scheduler though which does not yet have a box annihilator.

I don't think there's any great way to test this besides setting up
a task that doesn't run the box annihilator and I don't know that that's
a capability we want tasks to have.
2013-05-02 18:42:07 -07:00
Patrick Walton
c0f587de34 librustc: Make uninhabited enums not castable to int 2013-05-02 18:41:57 -07:00
Niko Matsakis
9bded76260 move @mut into scope_info 2013-05-02 21:15:36 -04:00
bors
73733c96db auto merge of #6195 : luqmana/rust/newtype-drop, r=catamorphism
Follow up with test case for #6125.
2013-05-02 18:09:35 -07:00
Patrick Walton
dc5df61bc1 librustc: Update the serializer to work properly with INHTWAMA, removing mutable fields in the process 2013-05-02 17:00:51 -07:00
bors
79a2b2eafc auto merge of #6192 : thestinger/rust/link_args, r=catamorphism
Lots of linking arguments need to be passed as -Wl,--foo so giving the
comma meaning at the rustc layer makes those flags impossible to pass.

Multiple arguments can now be passed from a shell by quoting the
argument: --link-args='-lfoo -Wl,--as-needed'.
2013-05-02 16:57:36 -07:00
bors
31599fe347 auto merge of #6172 : Sodel-the-Vociferous/rust/rm_trt_obj_magic_nums, r=catamorphism,graydon
I don't know how one would write a separate test for this sort of thing. Building the compiler, and `make check` worked, which should mean I didn't screw anything.
2013-05-02 16:03:37 -07:00
Patrick Walton
6f2e429041 libstd: De-mut arena 2013-05-02 16:00:10 -07:00
bors
ba842518a2 auto merge of #6197 : graydon/rust/re-xfail, r=graydon
These were accidentally un-xfail'ed since they pass on x64. They don't yet on x86.
2013-05-02 14:15:37 -07:00
Graydon Hoare
32ebaacbc6 re-xfail some tests that fail on x86 2013-05-02 14:12:55 -07:00
Niko Matsakis
cc62680cc9 free the borrow list propertly instead of crashing 2013-05-02 17:08:04 -04:00
Niko Matsakis
4999d44d5b trans: fix borrow violation 2013-05-02 16:37:28 -04:00
gareth
bd979c1fbf Fix some issues with test_destroy_actually_kills:
- it is now cross platform, instead of just unix
- it now avoids sleeping (fixing issue #6156)
- it now calls force_destroy() when force = true (was a bug)
2013-05-02 21:19:12 +01:00