Commit Graph

33246 Commits

Author SHA1 Message Date
bors
6d15f28986 auto merge of #17809 : thestinger/rust/windows, r=eddyb 2014-10-06 00:27:16 +00:00
Alexis Beingessner
7c04b3c5bd flesh out BTree docs 2014-10-05 19:58:56 -04:00
Daniel Micay
6bb648fadc work around yet another MinGW-w64 ASLR bug 2014-10-05 19:02:36 -04:00
bors
9978dc87aa auto merge of #17794 : SimonSapin/rust/patch-8, r=alexcrichton 2014-10-05 21:07:10 +00:00
Jakub Wieczorek
b9896cbf6e Fix handling of struct variants in a couple of places
Fixes #17405.
Fixes #17518.
Fixes #17800.
2014-10-05 22:32:47 +02:00
Brian Koropoff
1694bf64ba Build regression test for issue #17021 with -g
This causes it to hit the previously ICEing debuginfo codepath
2014-10-05 12:19:58 -07:00
Brian Koropoff
24d7669099 Handle emitting debug info for unboxed closures
This fixes an ICE.  Closes issue #17021
2014-10-05 12:19:22 -07:00
bors
f56c1c91f3 auto merge of #17762 : bkoropoff/rust/issue-17734, r=alexcrichton
Closes issue #17734

r? @nick29581
2014-10-05 19:17:07 +00:00
Alexis Beingessner
79c21d9e79 adding iterator benches to tree-based maps for comparison purposes 2014-10-05 13:35:16 -04:00
Brian Koropoff
714c8d8659 Add regression test for issue #17734 2014-10-05 10:09:24 -07:00
bors
027d6b4d53 auto merge of #17799 : ebfe/rust/cfg_warn, r=alexcrichton
Probably fallen through the cracks in #17630.
2014-10-05 17:02:11 +00:00
Michael Gehring
67d83f3bfc Fix cfg syntax warnings in libnative 2014-10-05 18:44:14 +02:00
Simon Sapin
80401da12e String::truncate doc: also fails if not a char boundary 2014-10-05 12:15:59 +01:00
Lionel Flandrin
db087de079 Fix target-feature codegen option syntax in rustc man page.
The man page stated that the list of features was space-separated when
it's actually comma-separated.
2014-10-05 13:06:33 +02:00
bors
c586490715 auto merge of #17785 : P1start/rust/diagnostics, r=alexcrichton
Closes #17765.
Closes #15524.
Closes #14772.
2014-10-05 10:57:04 +00:00
bors
dfbe9eb3b2 auto merge of #17777 : lambda/rust/fix-docs-short-hash, r=alexcrichton
The escaped newline in the middle of the variable reference breaks the
short hash substitution, leaving the link text exmpty; rewrap so that
each replacement is on its own line.
2014-10-05 09:07:06 +00:00
Brian Koropoff
4d2ff432e4 Add regression test for issue #17780 2014-10-05 00:26:06 -07:00
Brian Koropoff
16b27bbead Fix unit test that was illegally mutating an upvar 2014-10-05 00:26:06 -07:00
Brian Koropoff
f74b1c4ee2 Categorize upvars in Fn unboxed closures as freely aliasable
This causes borrowck to correctly reject mutation or mutable borrows
of upvars in `Fn` unboxed closures since the closure environment is
aliasable.

This also tracks the responsible closure in the aliasability
information returned and uses it to give a helpful diagnostic.

Closes issue #17780
2014-10-05 00:24:10 -07:00
Brian Koropoff
ea3ab731a3 Track kind of closure in upvar categorization
Keep track of the kind of closure responsible for an upvar
2014-10-05 00:23:33 -07:00
bors
5660db2508 auto merge of #16970 : kmcallister/rust/llvm-unreachable, r=thestinger
I'm not sure how to add an automated test for this.
2014-10-05 07:17:09 +00:00
bors
3b8c528d08 auto merge of #17776 : luqmana/rust/ul, r=alexcrichton
Update our LLVM snapshot to master (as of ~ Wed Oct 1 18:49:58 2014 +0000). 

Since my patches have landed upstream this fixes #13429 and #7298.
2014-10-05 04:57:11 +00:00
bors
026206695a auto merge of #17774 : lambda/rust/docs-mention-hoedown, r=steveklabnik
Rust 0.11.0 switched from sundown to the actively maintained hoedown; update the rustdoc documention to mention this.
2014-10-05 03:12:10 +00:00
Keegan McAllister
675aa7692d Add tests for intrinsics::unreachable 2014-10-04 20:09:09 -07:00
Keegan McAllister
401aeaf6d3 Add intrinsics::unreachable 2014-10-04 20:09:09 -07:00
bors
5ca68d4ac1 auto merge of #17772 : bkoropoff/rust/issue-17767, r=alexcrichton
Closes issue #17767
2014-10-05 01:27:10 +00:00
P1start
cc31d9cabc Give a more descriptive error when marking non-test items as #[test]
Closes #14772.
2014-10-05 14:16:32 +13:00
P1start
a29df44f51 Tweak ‘discriminant value already exists’ error message
Closes #15524.
2014-10-05 14:16:32 +13:00
bors
dc987adfc1 auto merge of #17766 : pminten/rust/atomic-int-in-examples, r=alexcrichton
The examples for fetch_or, fetch_and and fetch_xor for
std::sync::atomic::AtomicInt used AtomicUint instead of AtomicInt.
2014-10-04 23:42:07 +00:00
P1start
88baca7486 Rename vector patterns to array patterns
Closes #17765.
2014-10-05 12:08:37 +13:00
bors
07aeac8ac8 auto merge of #17761 : bkoropoff/rust/issue-17758, r=alexcrichton
This fixes an ICE and closes issue #17758
2014-10-04 21:57:08 +00:00
bors
a2e7c4da9b auto merge of #17738 : hoeppnertill/rust/master, r=alexcrichton
There is an issue with lev_distance, where
```
fn main() {
    println!("{}", "\x80".lev_distance("\x80"))
}
```
prints `2`.

This is due to using the byte length instead of the char length.
2014-10-04 19:32:07 +00:00
Brian Campbell
df4051e0b1 docs: Fix short hash link to github
The escaped newline in the middle of the variable reference breaks the
short hash substitution, leaving the link text exmpty; rewrap so that
each replacement is on its own line.
2014-10-04 14:41:37 -04:00
Felix Raimundo
e69f2ab8c0 Changed extern crate foo as bar; error message
Closes #17709
2014-10-04 19:51:22 +02:00
bors
e434aa1cf7 auto merge of #17760 : bkoropoff/rust/issue-17737, r=eddyb
This is a quick fix.  In the long term, the `TyVisitor` interface should be expanded to better represent closure types.

Closes issue #17737
2014-10-04 17:47:06 +00:00
Brian Campbell
fe8f43030a docs: Reference hoedown instead of sundown 2014-10-04 13:42:23 -04:00
Luqman Aden
4b22178d32 Update LLVM. 2014-10-04 13:28:57 -04:00
Brian Koropoff
e364584071 Fix infinite recursion in Writer impl for &mut Writer
Closes issue #17767
2014-10-04 10:24:10 -07:00
bors
20f4c45bad auto merge of #17769 : dotdash/rust/snapshot, r=eddyb 2014-10-04 13:52:09 +00:00
Björn Steinbrink
2d93a0406b Register new snapshots 2014-10-04 15:44:50 +02:00
Peter Minten
2bb7956a83 Make examples for AtomicInt refer to AtomicInt
The examples for fetch_or, fetch_and and fetch_xor for
std::sync::atomic::AtomicInt used AtomicUint instead of AtomicInt.
2014-10-04 13:29:09 +02:00
bors
749ff5e76a auto merge of #17755 : alexcrichton/rust/unblock-snapshot, r=eddyb
Hopefully unblocks a snapshot
2014-10-04 06:12:08 +00:00
Brian Koropoff
1f7a8bcb4b Correctly generate drop glue for Box<str>
This fixes an ICE.  Closes issue #17734
2014-10-03 23:00:20 -07:00
Brian Koropoff
6f6d13a7c7 Add regression test for issue #17758 2014-10-03 22:37:08 -07:00
Brian Koropoff
4c166abbbb Handle provided trait methods when giving inference error suggestions
This fixes an ICE.  Closes issue #17758
2014-10-03 22:36:54 -07:00
bors
8794107f74 auto merge of #17754 : O-I/rust/update-guide, r=steveklabnik
Hi,

These are a few small edits to the Guide that I made while reading online. Really well done and approachable.

I have a few questions below, but I don't know if this is the proper place to ask them, so feel free to ignore the below.

1. Trailing commas seem to be a convention in Rust and are used quite a bit throughout the Guide, but are never explicitly mentioned. Maybe adding a short mention about them when they first appear in the Structs section might be helpful to those who are unfamiliar with or don't use them in other languages.

2. In the Iterators section, there is a block of code like this:

```rust
let mut range = range(0i, 10i);

loop {
    match range.next() {
        Some(x) => {
            println!("{}", x);
        }  // no comma needed?
        None => { break }
    }
}
```

My inclination would be to put a comma where the comment is to separate the two arms to get this to compile, but it runs fine either way. Is there a convention on commas for scenarios like this where each arm is enclosed in `{}`?

All the best,
O-I
2014-10-04 04:27:05 +00:00
Brian Koropoff
404db68da4 Add regression test for issue #17737 2014-10-03 20:07:43 -07:00
bors
908c9e6a1b auto merge of #17752 : SimonSapin/rust/patch-6, r=thestinger
`v.len()` counts code units, not UTF-16 bytes. The lower bound is one UTF-8 byte per code unit, not per two code units.

I believe this is correct, but it’s late. Someone please double check.
2014-10-04 02:42:07 +00:00
Brian Koropoff
8e455ea07c Fix type visitor glue for unboxed closures
This is a quick fix that prevents an ICE by mimicing the visitor
glue for boxed closures and bare functions.  Ideally, the `TyVisitor`
interface will be improved in the future to allow representing
more information about unboxed closures such as Fn/FnMut/FnOnce
status, capture mode, and captured free variable types and offsets.

Closes issue #17737
2014-10-03 19:40:19 -07:00
bors
136ab3c6b1 auto merge of #17731 : bkoropoff/rust/unboxed-by-ref, r=pcwalton
This began as an attempt to fix an ICE in borrowck (issue #17655), but the rabbit hole went pretty deep.  I ended up plumbing support for capture-by-reference unboxed closures all the way into trans.

Closes issue #17655.
2014-10-04 00:17:04 +00:00