46198 Commits

Author SHA1 Message Date
Richard Diamond
ba72d9722c Don't add unnamed address attributes to intrinsics.
Intrinsics never have an address, so it doesn't make sense to say that their
address is unnamed.
2015-09-06 19:26:41 -05:00
bors
01b9cc58ba Auto merge of #28269 - petrochenkov:docorder, r=steveklabnik
This is what I was talking about in https://github.com/rust-lang/rust/pull/26462#issuecomment-113883744

r? @steveklabnik
2015-09-06 19:43:06 +00:00
bors
a269e31a30 Auto merge of #28265 - boblehest:master, r=bluss
In the last code snippet on the following page there is a bug in the
implementation of Vec::drain().

https://doc.rust-lang.org/nightly/nomicon/vec-drain.html

```rust
pub fn drain(&mut self) -> Drain<T> {
    // Oops, setting it to 0 while we still need the old value!
    self.len = 0;

    unsafe {
        Drain {
            // len is used to create a &[T] from &self here,
            // so we end up always creating an empty slice.
            iter: RawValIter::new(&self),
            vec: PhantomData,
        }
    }
}
```

A simple test to verify that Drain is broken can be found here:
https://play.rust-lang.org/?gist=30f579565e4bbf4836ce&version=nightly

And here's one with a fixed implementation:
https://play.rust-lang.org/?gist=2ec0c1a6dcf5defd7a53&version=nightly
2015-09-06 17:55:04 +00:00
Jørn Lode
97dd25094c Rustonomicon: Reword potentially confusing comment in Vec::drain. 2015-09-06 18:21:57 +02:00
Vadim Petrochenkov
c34f350664 Further tweaks to doc/index.md 2015-09-06 16:07:55 +03:00
Vadim Petrochenkov
201bfbe55e Reorder sections in doc/index.md 2015-09-06 15:25:01 +03:00
Jørn Lode
c08deef982 Rustonomicon: Fix bug in implementation of Vec::drain()
In the last code snippet on the following page there is a bug in the
implementation of Vec::drain().

https://doc.rust-lang.org/nightly/nomicon/vec-drain.html

```rust
pub fn drain(&mut self) -> Drain<T> {
    // Oops, setting it to 0 while we still need the old value!
    self.len = 0;

    unsafe {
        Drain {
            // len is used to create a &[T] from &self here,
            // so we end up always creating an empty slice.
            iter: RawValIter::new(&self),
            vec: PhantomData,
        }
    }
}
```

A simple test to verify that Drain is broken can be found here:
https://play.rust-lang.org/?gist=30f579565e4bbf4836ce&version=nightly

And here's one with a fixed implementation:
https://play.rust-lang.org/?gist=2ec0c1a6dcf5defd7a53&version=nightly
2015-09-06 03:44:13 +02:00
bors
f84d53ca0a Auto merge of #28259 - christopherdumas:fix_empty_link, r=Manishearth 2015-09-06 01:01:38 +00:00
bors
53e694e19b Auto merge of #28190 - arielb1:generic-key-entry, r=eddyb
Fixes #28181
This may fix #28151

r? @pnkfelix
2015-09-05 22:15:40 +00:00
christopherdumas
3fa1ee4677 Added link for hygenic macro system in macros.md 2015-09-05 06:04:15 -07:00
bors
205c356ace Auto merge of #28249 - stepancheg:get-num-cpus, r=huonw
No need to export this symbol. `rust_get_num_cpus` is exported.
2015-09-05 12:47:47 +00:00
bors
5c2cfdfb79 Auto merge of #28258 - Manishearth:rollup, r=Manishearth
- Successful merges: #28225, #28231, #28234, #28253
- Failed merges:
2015-09-05 11:01:42 +00:00
Manish Goregaokar
1bf060ffb3 Rollup merge of #28253 - murarth:prelude-typo, r=steveklabnik 2015-09-05 16:16:02 +05:30
Manish Goregaokar
d7afefcbd1 Rollup merge of #28234 - AlisdairO:diagnostics247, r=Manishearth
As title :-)
Part of #24407.

r? @Manishearth
2015-09-05 16:16:01 +05:30
Manish Goregaokar
6ed1c590d2 Rollup merge of #28231 - GuillaumeGomez:help_note, r=Manishearth
r? @Manishearth
2015-09-05 16:16:01 +05:30
Manish Goregaokar
3610c731f3 Rollup merge of #28225 - jackwilsonv:patch-3, r=steveklabnik
r? @steveklabnik
2015-09-05 16:16:01 +05:30
Guillaume Gomez
771ab35c3d Add erroneous code example for E0010 2015-09-05 11:23:50 +02:00
bors
6b36e921f4 Auto merge of #28242 - Diggsey:msvc-backtrace, r=alexcrichton
Currently LLVM does not generate the debug info required to get complete backtraces even when functions are inlined, so that part of the `run-pass/backtrace-debuginfo.rs` test is disabled when targetting MSVC. At worst this results in missing stack frames where functions have been inlined.
2015-09-05 07:21:01 +00:00
Murarth
f7ffd502e5 Fix typo in prelude docs 2015-09-04 21:27:55 -07:00
bors
973da4fe6f Auto merge of #28240 - nhowell:master, r=steveklabnik
The Introduction page generated by rustbook used weird relative links
like "./getting-started.html" instead of just "getting-started.html"
like on the other pages. This adversely affected Windows builds the
worst, since it generated links like ".\getting-started.html" (note the
backslash). If you then try to upload the generated book to a webserver,
you end up with 404's. See this example of what is going on with the
Introduction page links and why this PR should fix it:
http://is.gd/fRUTXk

Compare the links on these two pages, for instance:
https://doc.rust-lang.org/nightly/book/
https://doc.rust-lang.org/nightly/book/getting-started.html

Also, fix a few whitespace issues in build.rs.
2015-09-05 04:03:34 +00:00
bors
7ee876cb8e Auto merge of #28221 - huonw:simd, r=alexcrichton
The ARM equivalents of the AArch64 are annoyingly more complicated (and some of the AArch64 ones are too).

I think I've got exposed all the x86 intrinsics from SSE to AVX2 now (at least, the ones that LLVM implements as callable intrinsics).
2015-09-05 02:15:41 +00:00
Stepan Koltsov
6ca5d52bd2 get_num_cpus function should be static
No need to export this symbol. `rust_get_num_cpus` is exported.
2015-09-05 05:03:48 +03:00
Diggory Blake
9a83842849 Add line numbers to MSVC backtrace
Add comments
2015-09-05 00:56:53 +01:00
bors
779b2a9847 Auto merge of #28161 - nrc:fmt, r=brson 2015-09-04 23:32:35 +00:00
Nick Cameron
6a127e95c7 fixup 2015-09-05 09:45:35 +12:00
Nick Cameron
edca8f73d6 rustfmt librustc_trans/save 2015-09-05 09:45:35 +12:00
Nick Howell
0f0c48b0b1 rustbook: Fix relative links on the Introduction page
The Introduction page generated by rustbook used weird relative links
like "./getting-started.html" instead of just "getting-started.html"
like on the other pages. This adversely affected Windows builds the
worst, since it generated links like ".\getting-started.html" (note the
backslash). If you then try to upload the generated book to a webserver,
you end up with 404's. See this example of what is going on with the
Introduction page links and why this PR should fix it:
http://is.gd/fRUTXk

Compare the links on these two pages, for instance:
https://doc.rust-lang.org/nightly/book/
https://doc.rust-lang.org/nightly/book/getting-started.html

Also, fix a few whitespace issues in build.rs.
2015-09-04 17:00:33 -04:00
bors
1110f1e873 Auto merge of #28197 - petrochenkov:borrow, r=alexcrichton 2015-09-04 20:23:51 +00:00
Alisdair Owens
8175dce517 Add long diagnostics for E0247 2015-09-04 19:22:11 +01:00
bors
668dac477e Auto merge of #28035 - Diggsey:msvc-escaping, r=alexcrichton
This fixes #28018 with the exception of the point about cmake, but that's really a limitation of `./configure` builds.
2015-09-04 17:58:35 +00:00
bors
62c45f4f25 Auto merge of #28227 - birkenfeld:use_filter_map, r=alexcrichton 2015-09-04 16:16:09 +00:00
Huon Wilson
67aa4c775a Add some fancier AArch64 load/store instructions. 2015-09-04 09:14:13 -07:00
Huon Wilson
7241ae9112 Support return aggregates in platform intrinsics.
This also involved adding `[TYPE;N]` syntax and aggregate indexing
support to the generator script: it's the only way to be able to have a
parameterised intrinsic that returns an aggregate, since one can't refer
to previous elements of the current aggregate (and that was harder to
implement).
2015-09-04 09:14:13 -07:00
Huon Wilson
c19e7b629b Add various pointer & void-using x86 intrinsics. 2015-09-04 09:14:13 -07:00
Huon Wilson
2b45a9ab54 Support bitcasts in platform intrinsic generator. 2015-09-04 09:14:13 -07:00
Huon Wilson
62e346af4b Support void in platform intrinsic generator. 2015-09-04 09:14:13 -07:00
Huon Wilson
add04307f9 Support non-return value references in platform intrinsic generator. 2015-09-04 09:14:13 -07:00
Huon Wilson
d12135a70d Add support for pointers to generator.py. 2015-09-04 09:14:12 -07:00
Guillaume Gomez
ec4ba272b0 Add span_help for E0002 2015-09-04 18:09:16 +02:00
bors
2f77a59d16 Auto merge of #28201 - apasel422:issue-26205, r=nikomatsakis
Closes #26205.

r? @eddyb
2015-09-04 14:16:54 +00:00
bors
94ddfc7707 Auto merge of #28119 - nagisa:bytesderef, r=alexcrichton 2015-09-04 12:34:03 +00:00
bors
6f1014f351 Auto merge of #28069 - alexcrichton:rt-atexit, r=brson
This adds a call to `rt::cleanup` on `process::exit` to make sure we clean up
after ourselves on the way out from Rust.

Closes #28065
2015-09-04 10:33:42 +00:00
Diggory Blake
f86c853fee Fix escaping in msvc builds 2015-09-04 10:03:56 +01:00
bors
b4de424e41 Auto merge of #28034 - alexcrichton:new-lines, r=aturon
This commit is an implementation of [RFC 1212][rfc] which tweaks the behavior of
the `str::lines` and `BufRead::lines` iterators. Both iterators now account for
`\r\n` sequences in addition to `\n`, allowing for less surprising behavior
across platforms (especially in the `BufRead` case). Splitting *only* on the
`\n` character can still be achieved with `split('\n')` in both cases.

The `str::lines_any` function is also now deprecated as `str::lines` is a
drop-in replacement for it.

[rfc]: https://github.com/rust-lang/rfcs/blob/master/text/1212-line-endings.md

Closes #28032
2015-09-04 08:50:56 +00:00
bors
9d1f8200e7 Auto merge of #28004 - Diggsey:win-backtrace, r=alexcrichton
Technically this could also be used for `windows-msvc` targets, as I believe they have *both* dwarf and pdb debug information, but I haven't enabled it there as it should really use the native windows APIs for that, instead of libbacktrace.

I wasn't exactly sure where I should put "gnu" specific stuff, so tell me if I should structure things differently.

This is still a WIP, and I haven't tested properly to make sure I haven't broken msvc/linux builds yet.
2015-09-04 07:08:17 +00:00
Alex Crichton
48615a68fb std: Account for CRLF in {str, BufRead}::lines
This commit is an implementation of [RFC 1212][rfc] which tweaks the behavior of
the `str::lines` and `BufRead::lines` iterators. Both iterators now account for
`\r\n` sequences in addition to `\n`, allowing for less surprising behavior
across platforms (especially in the `BufRead` case). Splitting *only* on the
`\n` character can still be achieved with `split('\n')` in both cases.

The `str::lines_any` function is also now deprecated as `str::lines` is a
drop-in replacement for it.

[rfc]: https://github.com/rust-lang/rfcs/blob/master/text/1212-line-endings.md

Closes #28032
2015-09-03 23:01:41 -07:00
bors
791e7bcb41 Auto merge of #28170 - nagisa:loopctl-label-spans, r=alexcrichton
r? @alexcrichton
2015-09-04 05:15:22 +00:00
Jack Wilson
f44fbf08f9 Capitalize circle reference 2015-09-03 20:51:08 -07:00
Jack Wilson
2548e2ee58 Fixes minor formatting inconsistencies 2015-09-03 20:48:26 -07:00
bors
35b14544e1 Auto merge of #28220 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #28167, #28202, #28203, #28204, #28205, #28207, #28208, #28209, #28210, #28212, #28213, #28214, #28215, #28216
- Failed merges:
2015-09-04 02:33:44 +00:00