Commit Graph

20840 Commits

Author SHA1 Message Date
Huon Wilson
2cd772bdba std::rand: add the Sample and IndependentSample traits.
These are a "parameterised" Rand.
2013-10-23 10:40:06 +11:00
Alex Crichton
e6d8f06cad Tidy up asm! usage in libstd 2013-10-22 15:59:19 -07:00
bors
a7453ad0df auto merge of #9969 : reedlepee123/rust/priv_fields, r=bstrie 2013-10-22 15:31:26 -07:00
reedlepee
7e6f5bb5c9 Making ai_next field public 2013-10-23 03:25:10 +05:30
bors
b477f7a7b7 auto merge of #10013 : bdash/rust/mavericks-unwinding, r=alexcrichton
OS X 10.9's linker has a bug that results in it failing to preserve
DWARF unwind information when passed the -no_compact_unwind flag.
This flag is passed on OS X because the unwind information for
__morestack cannot be represented by the compact unwind format.

We can work around this problem by using a more targeted approach
to disabling compact unwind information. The OS X linker looks for
a particular pattern in the DWARF unwind information and will not
attempt to convert the unwind information to the compact format.
The pattern in question is the return address register being saved
twice to the same location.

Fixes #6849.
2013-10-22 13:46:25 -07:00
reedlepee
c76222f732 Removed the file src/libstd/unstable/extfmt.r 2013-10-23 01:21:03 +05:30
reedlepee
930ded404a Removed the unnecesary comments 2013-10-23 01:10:50 +05:30
reedlepee
92662a9f91 Removed unnecessary comments and white spaces as suggested 2013-10-23 01:10:50 +05:30
reedlepee
ad465441ba Removed Unnecessary comments and white spaces #4386 2013-10-23 01:10:50 +05:30
reedlepee
0ada7c7ffe Making fields in std and extra : private #4386 2013-10-23 01:10:50 +05:30
reedlepee
dadb6f0cd9 Don't Make str field private 2013-10-23 01:10:49 +05:30
bors
ae0905ab67 auto merge of #9923 : thestinger/rust/managed_boxes, r=brson
I'll flip this on after doing a snapshot. This syntax may or may not
stay around, and managed boxes are currently not very useful. They have
the same overall performance characteristics as `std::rc::Rc`, but are
significantly slower, allocate larger boxes and hold onto the memory
beyond when it is needed due to lacking move semantics.

There are currently two useful aspects of the type:

* the dereference sugar, which we should implement for `Rc`
* the annihilator freeing cycles at the end of the task
2013-10-22 11:51:23 -07:00
Michael Letterle
d83c5f7b1b Minor grammatical fixes and removed section on 'rust' tool 2013-10-22 14:30:27 -04:00
Daniel Micay
38c620e758 add feature gate for managed boxes
I'll flip this on after doing a snapshot. This syntax may or may not
stay around, and managed boxes are currently not very useful. They have
the same overall performance characteristics as `std::rc::Rc`, but are
significantly slower, allocate larger boxes and hold onto the memory
beyond when it is needed due to lacking move semantics.

There are currently two useful aspects of the type:

* the dereference sugar, which we should implement for `Rc`
* the annihilator freeing cycles at the end of the task
2013-10-22 13:47:08 -04:00
bors
fd2c0128a7 auto merge of #10006 : alexcrichton/rust/another-massive-rename, r=brson
Drop the `2` suffix on all of them, updating all code in the process of doing so. This is a completely automated change, and it's dependent on the snapshots going through.
2013-10-22 09:24:48 -07:00
bors
cd8c7cf612 auto merge of #10002 : catamorphism/rust/bug-report-docs, r=alexcrichton
r? @alexcrichton And also reference the bug report HOWTO in CONTRIBUTING.md
2013-10-22 08:11:52 -07:00
Alex Crichton
7aa32f7d8e Remove the now-duplicate logging macros 2013-10-22 08:09:56 -07:00
Alex Crichton
daf5f5a4d1 Drop the '2' suffix from logging macros
Who doesn't like a massive renaming?
2013-10-22 08:09:56 -07:00
bors
15a6bdebab auto merge of #10009 : LeoTestard/rust/asm-feature-gated, r=huonw
Suite of #9991
2013-10-22 04:46:22 -07:00
Léo Testard
c4bcf7714b Activate checking code for ASM feature gate. Fix tests 2013-10-22 13:41:25 +02:00
Mark Rowe
fd8c06e7b5 Fix unwinding on OS X 10.9.
OS X 10.9's linker has a bug that results in it failing to preserve
DWARF unwind information when passed the -no_compact_unwind flag.
This flag is passed on OS X because the unwind information for
__morestack cannot be represented by the compact unwind format.

We can work around this problem by using a more targeted approach
to disabling compact unwind information. The OS X linker looks for
a particular pattern in the DWARF unwind information and will not
attempt to convert the unwind information to the compact format.
The pattern in question is the return address register being saved
twice to the same location.

Fixes #6849.
2013-10-22 03:02:25 -07:00
bors
c6337f2099 auto merge of #10003 : alexcrichton/rust/issue-fixes, r=brson
Commits have all the fun details.
2013-10-22 01:31:24 -07:00
bors
f6fccdea8a auto merge of #9982 : danluu/rust/local_delc_xfail, r=brson
This patch is trivial, but it comes with a question. Does Mozilla need to own the copyright on code submitted to Rust?

The reason I ask is that, since the last time I submitted anything to a Mozilla project, I started working at Google, and they (by default) own the copyright on code that I write (even in my spare time). There's a process to assign copyright to another entity, and it should be a formality for something like this, but I'd still have to go through it if that's a requirement for Rust.

Anyway, I'm submitting this incredibly trivial thing because, if I have to go through that process for the first time, I'd like it to be for something that's trivial, so I can see how much of a hassle it is (if any) without having invested much time up front.

I didn't see anything about copyright in the Mozilla contributor's agreement, but I could have easily missed something somewhere else.
2013-10-21 19:26:19 -07:00
bors
8a60caa107 auto merge of #9960 : adridu59/rust/patch-doc-limited, r=alexcrichton
This is #9868 but doesn't move css files to a separate subfolder, which was causing errors on the Rust buildbot.

@alexcrichton
2013-10-21 18:06:34 -07:00
bors
7e4404b6fb auto merge of #9937 : brson/rust/log_str, r=alexcrichton 2013-10-21 15:46:23 -07:00
bors
6dd6623b71 auto merge of #9936 : madjar/rust/master, r=alexcrichton
This should close #9468.

I removed the test stating that nested comments should not be implemented.

I had a little chicken-and-egg problem because a comment of the std contains "/*", and adding support for nested comment creates a backward incompatibility in that case, so I had to use a dirty hack to get stage1 and stage2 to compile. This part should be revert when this commit lands in a snapshot.

This is my first non-typo contribution, so I'm open to any comment.
2013-10-21 14:21:54 -07:00
bors
ece5028a8b auto merge of #10000 : cmr/rust/snapshot, r=alexcrichton 2013-10-21 13:11:37 -07:00
Georges Dubus
1dc3d0bf86 Add support for nested comments
Fixes #9468.
2013-10-21 21:58:34 +02:00
Tim Chevalier
5afd760834 syntax: Add the Bug Report HOWTO URL to the ICE message
And also reference the bug report HOWTO in CONTRIBUTING.md
2013-10-21 12:11:24 -07:00
bors
d65dbe230d auto merge of #9997 : thestinger/rust/float, r=thestinger 2013-10-21 12:01:34 -07:00
Brian Anderson
3675e42334 std: Move sys::log_str to repr::repr_to_str. Further work on #2240. 2013-10-21 11:59:23 -07:00
Alex Crichton
41f6e97a44 rustdoc: Render default methods for impls as well
This does not work for cross-crate implementations of traits. Cross-crate
implementations are a separate issue that should be addressed separately.
Basically when an implementation of an external trait is detected, the trait
would have to be loaded at that time (or possibly sooner...). Rustdoc currently
doesn't have the proper infrastructure for adding this.

Closes #9985
cc #9999
2013-10-21 11:43:14 -07:00
Corey Richardson
1122d6ab4a Register snapshots 2013-10-21 14:43:11 -04:00
Daniel Micay
462a28d003 fix the new floating point intrinsics 2013-10-21 14:26:07 -04:00
bors
cf7b9eb51f auto merge of #9736 : catamorphism/rust/rustpkg-issue-8520, r=cmr
r? @cmr As per #8520, find crates in the current working directory even
if it's not a workspace.

Closes #8520
2013-10-21 10:51:29 -07:00
Alex Crichton
bf6bb01a22 rustdoc: Don't overflow long type/module names
Closes #9862
2013-10-21 10:48:57 -07:00
Tim Chevalier
5412794192 rustpkg: Search for crates in the current directory
As per #8520, find crates in the current working directory even
if it's not a workspace.

Closes #8520
2013-10-21 10:43:42 -07:00
Alex Crichton
a25bbcc27f Propagate reachability through reexported impls
When re-exporting a trait/structure/enum, then we need to propagate the
reachability of the type through the methods that are defined on it.

Closes #9906
Closes #9968
2013-10-21 10:37:36 -07:00
bors
ebb9b46191 auto merge of #9986 : thestinger/rust/float, r=cmr
copysign, ring, nearbyint, round
2013-10-21 08:56:28 -07:00
Dan Luu
3503d0bcd1 Make fn pub for windows compatibility 2013-10-21 07:45:16 -05:00
bors
6e6981c3eb auto merge of #9991 : LeoTestard/rust/asm-feature-gate, r=huonw
Fixes #9882
Note that the actual checking code is inside a if false in order to compile libstd properly.
libstd uses asm! in rt. If we put ```#[feature(asm)]``` in libstd, it fails to build at stage0 beacause the
asm feature is not known yet by the snapshot compiler.
We must wait that this PR arrives into the snapshot in order to actually activate the checking code.
2013-10-21 05:21:27 -07:00
Léo Testard
c5346fea38 Add a feature flag for ASM 2013-10-21 14:04:29 +02:00
bors
04ac697f52 auto merge of #9979 : alexcrichton/rust/print-no-alloc, r=huonw
Instead use format_args! to pass around a struct to pass along into std::fmt
2013-10-21 02:26:24 -07:00
Daniel Micay
4533432612 expose new floating point intrinsics
copysign, ring, nearbyint, round
2013-10-21 04:17:03 -04:00
bors
cd59a7c464 auto merge of #9976 : thestinger/rust/typo, r=thestinger 2013-10-20 21:11:19 -07:00
Adrien Tétar
694b624305 rustdoc: nitpicks & cleanup 2013-10-21 04:13:09 +02:00
Dan Luu
47fc24bd8f Use updated local declaration syntax. 2013-10-20 17:54:53 -05:00
Alex Crichton
df6225b8c3 Don't allocate a string when calling println
Instead use format_args! to pass around a struct to pass along into std::fmt
2013-10-20 15:42:24 -07:00
Daniel Micay
93b95dd394 fix typo 2013-10-20 15:12:13 -04:00
bors
69860b79b8 auto merge of #9812 : HNO3/rust/windows-utf8, r=alexcrichton
This fixes #9418 and #9618, and potential problems related to directory walking.
2013-10-20 10:31:17 -07:00
Huon Wilson
ab045fa797 testsuite: test for fixed issue. Closes #7580.
Fixed by the privacy changes that allowed the `mod std {}` at the top
level of `std` to be non-`pub`.
2013-10-20 20:19:29 +11:00
LEE Wondong
3e53c929a2 Fix unicode errors on Windows in path_is_dir, path_exists, getcwd and rust_localtime.
This make these functions use wchar_t version of APIs, instead of char version.
2013-10-20 15:02:03 +09:00
bors
69e46f3aa9 auto merge of #9956 : sfackler/rust/more-more-visibility, r=alexcrichton 2013-10-19 14:01:10 -07:00
bors
9d047cdead auto merge of #9952 : huonw/rust/fmt-doc, r=alexcrichton
Cf. the concern raised in https://github.com/mozilla/rust/pull/9938#issuecomment-26648696.
2013-10-19 12:11:13 -07:00
bors
310f7a5f52 auto merge of #9949 : Heather/rust/driver-rs-cleanup-pullrequest, r=thestinger 2013-10-19 10:56:15 -07:00
bors
31a209ca42 auto merge of #9834 : alexcrichton/rust/morestack, r=brson
This commit re-introduces the functionality of __morestack in a way that it was
not originally anticipated. Rust does not currently have segmented stacks,
rather just large stack segments. We do not detect when these stack segments are
overrun currently, but this commit leverages __morestack in order to check this.

This commit purges a lot of the old __morestack and stack limit C++
functionality, migrating the necessary chunks to rust. The stack limit is now
entirely maintained in rust, and the "main logic bits" of __morestack are now
also implemented in rust as well.

I put my best effort into validating that this currently builds and runs successfully on osx and linux 32/64 bit, but I was unable to get this working on windows. We never did have unwinding through __morestack frames, and although I tried poking at it for a bit, I was unable to understand why we don't get unwinding right now.

A focus of this commit is to implement as much of the logic in rust as possible. This involved some liberal usage of `no_split_stack` in various locations, along with some use of the `asm!` macro (scary). I modified a bit of C++ to stop calling `record_sp_limit` because this is no longer defined in C++, rather in rust.

Another consequence of this commit is that `thread_local_storage::{get, set}` must both be flagged with `#[rust_stack]`. I've briefly looked at the implementations on osx/linux/windows to ensure that they're pretty small stacks, and I'm pretty sure that they're definitely less than 20K stacks, so we probably don't have a lot to worry about.

Other things worthy of note:
* The default stack size is now 4MB instead of 2MB. This is so that when we request 2MB to call a C function you don't immediately overflow because you have consumed any stack at all.
* `asm!` is actually pretty cool, maybe we could actually define context switching with it?
* I wanted to add links to the internet about all this jazz of storing information in TLS, but I was only able to find a link for the windows implementation. Otherwise my suggestion is just "disassemble on that arch and see what happens"
* I put my best effort forward on arm/mips to tweak __morestack correctly, we have no ability to test this so an extra set of eyes would be useful on these spots.
* This is all really tricky stuff, so I tried to put as many comments as I thought were necessary, but if anything is still unclear (or I completely forgot to take something into account), I'm willing to write more!
2013-10-19 09:46:18 -07:00
Alex Crichton
6d8330afb6 Use __morestack to detect stack overflow
This commit resumes management of the stack boundaries and limits when switching
between tasks. This additionally leverages the __morestack function to run code
on "stack overflow". The current behavior is to abort the process, but this is
probably not the best behavior in the long term (for deails, see the comment I
wrote up in the stack exhaustion routine).
2013-10-19 09:43:31 -07:00
Huon Wilson
759b20da87 std::fmt: fix markdown peculiarity, unicodify some arrows, ` some trait names. 2013-10-19 23:37:50 +11:00
bors
5751794d97 auto merge of #9946 : sfackler/rust/enum-doc, r=alexcrichton
Struct fields with inherited visibility were previously stripped.

Closes #9899
2013-10-19 05:06:17 -07:00
bors
0b1fb461d6 auto merge of #9941 : alexcrichton/rust/rustdoc, r=huonw
Beforehand the id of a method was the id of the 'self' argument, but this is not
the id which privacy was using (the id of the ast::method) struct, so by moving
the ids over to the privacy-target ones the methods are now stripped correctly.
2013-10-19 03:56:19 -07:00
Heather
8c5f584567 remove rust and rusti from driver.rs 2013-10-19 13:31:39 +04:00
bors
8f2480420e auto merge of #9932 : alexcrichton/rust/better-fmt-errors, r=cmr
Instead of just saying "unterminated format string" and friends, instead print
information about what was expected and what was found.

Closes #9931
2013-10-19 01:31:21 -07:00
Steven Fackler
c18afcd83a Check unnecessary visibility for struct variants 2013-10-18 22:44:11 -07:00
Steven Fackler
590b50f71a Fix struct field visibility and add enum field doc
Struct fields with inherited visibility were previously stripped.

Closes #9899
2013-10-18 22:03:14 -07:00
Alex Crichton
a447c3ca16 Try to improve format! error messages
Instead of just saying "unterminated format string" and friends, instead print
information about what was expected and what was found.

Closes #9931
2013-10-18 21:28:00 -07:00
bors
34a1e3dc9a auto merge of #9938 : alexcrichton/rust/fmtdox, r=huonw
Closes #9865
Closes #9808
2013-10-18 21:21:22 -07:00
bors
3a7337ff17 auto merge of #9437 : catamorphism/rust/rustpkg-dates, r=alexcrichton
r? @alexcrichton On most platforms, the time granularity is 1 sec or more, so comparing
dates in tests that check whether rebuilding did or didn't happen leads
to spurious failures. Instead, test the same thing by making an output
file read-only and trapping attempts to write to it.
2013-10-18 19:36:22 -07:00
Tim Chevalier
e779313b07 rustpkg: invoke touch with a portable set of args 2013-10-18 18:36:27 -07:00
Tim Chevalier
4dbef017dd rustc: Check that the output file is writeable before linking
This is because on Linux, the linker will silently overwrite
a read-only file.
2013-10-18 18:36:23 -07:00
Tim Chevalier
1cf029c229 rustpkg: Make rustpkg tests stop comparing dates
Instead of scrutinizing modification times in rustpkg tests,
change output files to be read-only and detect attempts to write
to them (hack suggested by Jack). This avoids time granularity problems.

As part of this change, I discovered that some dependencies weren't
getting written correctly (involving built executables and library
files), so this patch fixes that too.

This partly addresses #9441, but one test (test_rebuild_when_needed)
is still ignored on Linux.
2013-10-18 18:36:17 -07:00
bors
cd623e3e36 auto merge of #9919 : alexcrichton/rust/fmt-begone, r=huonw
It lived a good life, but its time has come. The groundwork is set for the
official transition after the next snapshot (removal of XXX2 macros)
2013-10-18 18:26:23 -07:00
Alex Crichton
7168e70bcb rustdoc: Strip methods correctly based on privacy
Beforehand the id of a method was the id of the 'self' argument, but this is not
the id which privacy was using (the id of the ast::method) struct, so by moving
the ids over to the privacy-target ones the methods are now stripped correctly.
2013-10-18 18:16:38 -07:00
bors
a9836e72dd auto merge of #9856 : alexcrichton/rust/privacy-errors, r=huonw
This stops labeling everything as "is private" when in fact the destination may
be public. Instead, the clause "is inaccessible" is used and the private part of
the flag is called out with a "is private" message.

Closes #9793
2013-10-18 17:11:25 -07:00
Alex Crichton
29c58c473f Remove the fmt! syntax extension
It lived a good life, but its time has come. The groundwork is set for the
official transition after the next snapshot (removal of XXX2 macros)
2013-10-18 16:01:40 -07:00
Alex Crichton
7a8324d3e8 Document traits and Default about format! better
Closes #9865
Closes #9808
2013-10-18 15:55:28 -07:00
bors
df187a0b67 auto merge of #9933 : alexcrichton/rust/no-jemalloc, r=brson
As discovered in #9925, it turns out that we weren't using jemalloc on most
platforms. Additionally, on some platforms we were using it incorrectly and
mismatching the libc version of malloc with the jemalloc version of malloc.

Additionally, it's not clear that using jemalloc is indeed a large performance
win in particular situtations. This could be due to building jemalloc
incorrectly, or possibly due to using jemalloc incorrectly, but it is unclear at
this time.

Until jemalloc can be confirmed to integrate correctly on all platforms and has
verifiable large performance wins on platforms as well, it shouldn't be part of
the default build process. It should still be available for use via the
LD_PRELOAD trick on various architectures, but using it as the default allocator
for everything would require guaranteeing that it works in all situtations,
which it currently doesn't.

Closes #9925
2013-10-18 15:26:24 -07:00
bors
6b07d885f3 auto merge of #9935 : reedlepee123/rust/my_new_branch, r=bstrie 2013-10-18 14:16:26 -07:00
chitra
bdcd29c6d0 Make fields in std::comm private 2013-10-19 00:18:17 +05:30
bors
a1b25f2f09 auto merge of #9930 : alexcrichton/rust/refcount-tests, r=thestinger
This fixes a bug I accidentally introduced in #9922
2013-10-18 11:31:31 -07:00
Alex Crichton
90911d7259 Remove jemalloc from the runtime
As discovered in #9925, it turns out that we weren't using jemalloc on most
platforms. Additionally, on some platforms we were using it incorrectly and
mismatching the libc version of malloc with the jemalloc version of malloc.

Additionally, it's not clear that using jemalloc is indeed a large performance
win in particular situtations. This could be due to building jemalloc
incorrectly, or possibly due to using jemalloc incorrectly, but it is unclear at
this time.

Until jemalloc can be confirmed to integrate correctly on all platforms and has
verifiable large performance wins on platforms as well, it shouldn't be part of
the default build process. It should still be available for use via the
LD_PRELOAD trick on various architectures, but using it as the default allocator
for everything would require guaranteeing that it works in all situtations,
which it currently doesn't.

Closes #9925
2013-10-18 10:38:21 -07:00
bors
d052912297 auto merge of #9851 : alexcrichton/rust/include_bin, r=huonw
Previously an ExprLit was created *per byte* causing a huge increase in memory
bloat. This adds a new `lit_binary` to contain a literal of binary data, which
is currently only used by the include_bin! syntax extension. This massively
speeds up compilation times of the shootout-k-nucleotide-pipes test

    before:
        time: 469s
        memory: 6GB
        assertion failure in LLVM (section too large)

    after:
        time: 2.50s
        memory: 124MB

Closes #2598
2013-10-18 09:41:33 -07:00
Alex Crichton
6a11e17b6b Fix an off-by-one in managed::refcount
This fixes a bug I accidentally introduced in #9922
2013-10-18 09:33:18 -07:00
Alex Crichton
273784e9bf Optimize include_bin! for large inputs
Previously an ExprLit was created *per byte* causing a huge increase in memory
bloat. This adds a new `lit_binary` to contain a literal of binary data, which
is currently only used by the include_bin! syntax extension. This massively
speeds up compilation times of the shootout-k-nucleotide-pipes test

    before:
        time: 469s
        memory: 6GB
        assertion failure in LLVM (section too large)

    after:
        time: 2.50s
        memory: 124MB

Closes #2598
2013-10-18 09:20:08 -07:00
bors
792d73259d auto merge of #9929 : chris-morgan/rust/2013-10-19-vim-updates, r=sanxiyn
- Update prelude items specially highlighted.
- Highlight `
2013-10-18 08:31:24 -07:00
bors
a1848bc755 auto merge of #9927 : chris-morgan/rust/fix-url-to_str-so-it-includes-the-port, r=huonw
Fixes #9451.
Fixes chris-morgan/rust-http#16.
2013-10-18 07:21:25 -07:00
Chris Morgan
f3796616de Highlight \0 in strings and chars in Vim. 2013-10-19 00:56:41 +11:00
Chris Morgan
0ae9e476af Update prelude items in Vim syntax. 2013-10-19 00:55:52 +11:00
Chris Morgan
1093730d72 Fix extra::url::to_str to include the port.
Fixes #9451.
Fixes chris-morgan/rust-http#16.
2013-10-19 00:25:03 +11:00
bors
3f240fedec auto merge of #9926 : Kimundi/rust/future_result_bad_sig, r=huonw 2013-10-18 06:11:18 -07:00
Marvin Löbel
3011801256 Made std::task::TaskBuilder::future_result() easier to use 2013-10-18 10:43:41 +02:00
bors
71c3f8c20c auto merge of #9924 : metajack/rust/fix-starts-with-ends-with, r=huonw
d4a32386f3 broke these since slice_to() and slice_from() must get character
boundaries, and arbitrary needle lengths don't necessarily map to character
boundaries of the haystack.

This also adds new tests that would have caught this bug.
2013-10-18 00:26:19 -07:00
bors
d0d554456a auto merge of #9850 : eddyb/rust/inline-asm-constraints, r=luqmana
I've implemented analysis support for the [GCC '=' write-only inline asm constraint modifier](http://gcc.gnu.org/onlinedocs/gcc/Modifiers.html). I had more changes, for '+' (read+write) as well, but it turns out LLVM doesn't support '+' at all.

I've removed the need for wrapping each output in ExprAddrOf, as that would require unwrapping almost everywhere and it was harder to reason about in borrowck than ExprAssign's LHS.

With this change, rustc will treat (in respect to validity of accessing a local) code like this:
```rust
let x: int;
unsafe {
    asm!("mov $1, $0" : "=r"(x) : "r"(5u));
}
```
as if it were this:
```rust
let x : int;
x = 5;
```

Previously, the local was required to be both mutable and initialized, and the write effect wasn't recorded.
2013-10-17 23:16:22 -07:00
Jack Moffitt
090b2453a1 Fix starts_with() and ends_with().
d4a32386f3 broke these since slice_to() and slice_from() must get character
boundaries, and arbitrary needle lengths don't necessarily map to character
boundaries of the haystack.

This also adds new tests that would have caught this bug.
2013-10-17 23:36:43 -06:00
bors
0e4d1fc8ca auto merge of #9922 : alexcrichton/rust/less-sys, r=thestinger
More progress on #2240
2013-10-17 22:06:22 -07:00
Eduard Burtescu
7ab0b0cd41 Handle inline asm outputs as write-only in liveness, borrowck and trans. 2013-10-18 08:02:56 +03:00
Alex Crichton
82f5f65076 Move sys::refcount to managed::refcount
More progress on #2240
2013-10-17 21:14:38 -07:00
sp3d
58b336d90b track language changes, improve attr handling in GtkSourceView language-spec
Refactors parsing of numerical literals to make it more readable.
Removes 'float'/the 'f' literal suffix and invalid character literals ''' and '\'.
Also makes attribute highlighting more robust and allows urls in attributes to be recognized.
2013-10-18 03:35:26 +00:00
bors
d8d1b8f8be auto merge of #9896 : brson/rust/stdmem, r=alexcrichton
This is progress toward removing std::sys.
2013-10-17 19:11:19 -07:00
bors
51709fcedc auto merge of #9916 : alexcrichton/rust/issue-9861, r=brson
This was just incorrectly handled before, the path component shouldn't be looked
at at all (we used absolute paths everywhere instead of relative to the current
module location).

Closes #9861
2013-10-17 18:01:22 -07:00
Brian Anderson
34d376f3cf std: Move size/align functions to std::mem. #2240 2013-10-17 17:31:35 -07:00