Commit Graph

46619 Commits

Author SHA1 Message Date
bors
2915f89167 Auto merge of #28468 - nagisa:revert-negate-unsigned-warning, r=alexcrichton
This reverts commit 0ca8e4994e.

Fixes #27141
2015-09-19 01:59:56 +00:00
bors
6e5a325474 Auto merge of #28484 - nrc:fix-save, r=alexcrichton
Should be lowering ast expressions to HIR expressions, not cheating via the hir map. That goes wrong now that there is not a 1:1 mapping between ast and hir (in the case of the crash due to ExprParen).
2015-09-19 00:08:38 +00:00
Marcus Klaas
e2f3e3ac4f Include visibility modifier in span of foreign item 2015-09-19 00:34:04 +02:00
David Szotten
634ffe5624 remove preceeding blank line 2015-09-18 22:16:31 +01:00
David Szotten
9d3deb4766 fix anchor link 2015-09-18 22:12:16 +01:00
bors
fb5de8ce57 Auto merge of #28465 - apasel422:tidy, r=alexcrichton
It is likely that these were committed by mistake.
2015-09-18 20:43:34 +00:00
Andrew Paseltiner
9526813f5b Avoid zero-sized leaf allocations in BTreeMap
When both the key and value types were zero-sized, `BTreeMap` previously
called `heap::allocate` with `size == 0` for leaf nodes, which is
undefined behavior, and jemalloc would attempt to read invalid memory,
crashing the process.

This avoids undefined behavior by allocating enough space to store one
edge in leaf nodes that would otherwise have `size == 0`. Although this
uses extra memory, maps with zero-sized key types that have sensible
implementations of the ordering traits can only contain a single
key-value pair (and therefore only a single leaf node), and maps with
key and value types that are both zero-sized have few uses, if any.

Furthermore, this is a temporary fix that will likely be unnecessary
once the `BTreeMap` implementation is rewritten to use parent pointers.

Closes #28493.
2015-09-18 15:27:17 -04:00
bors
72a10fa1d3 Auto merge of #28442 - nagisa:remove-enum-vis-field, r=alexcrichton
Followup on #28440 

Do not merge before the referenced PR is merged. I will fix the PR once that is merged (or close if it is not)
2015-09-18 18:51:04 +00:00
Simonas Kazlauskas
5104a93a0d Revert "Convert negate_unsigned feature gate to a warning"
This reverts commit 0ca8e4994e and fixes the code to work with
current rustc.

Fixes #27141
2015-09-18 20:22:16 +03:00
Guillaume Gomez
7badafa593 Add url to rust-book 2015-09-18 19:12:27 +02:00
bors
dc1c7975b0 Auto merge of #28336 - petrochenkov:empstr, r=pnkfelix
Closes https://github.com/rust-lang/rust/issues/24266
Closes https://github.com/rust-lang/rust/issues/16819
2015-09-18 16:57:21 +00:00
Sébastien Marie
913fe6dbe9 add support for non-standard name of stdc++ library
it makes rustc compatible with gcc installation that are using
`--program-transform-name' configure flag (on OpenBSD for example).

- detects at configure the name of stdc++ library on the system

- use the detected name in llvm makefile (with enable-static-stdcpp),
  and pass it to mklldeps.py

- generate mklldeps.rs using this detected name

note that CFG_STDCPP_NAME is about stdc++ name, not about libc++. If
using libc++, the default name will be `stdc++', but it won't be used
when linking.
2015-09-18 18:03:59 +02:00
bors
53ba768b8a Auto merge of #28492 - Ms2ger:a-name, r=steveklabnik
The id attribute has been an official part of HTML since 1997. There is no
reason not to use it.
2015-09-18 14:06:51 +00:00
Ms2ger
1a3b422207 Use divs with ids rather than as with names.
The id attribute has been an official part of HTML since 1997. There is no
reason not to use it.
2015-09-18 15:52:19 +02:00
Björn Steinbrink
2c17bfc20c Skip no-op adjustments in trans
That allows us to keep using trans_into() in case of adjustments that
may actually be ignored in trans because they are a plain deref/ref pair
with no overloaded deref or unsizing.

Unoptimized(!) benchmarks from servo/servo#7638

Before
```
test goser::bench_clone                          ... bench:      17,701 ns/iter (+/- 58) = 30 MB/s
test goser::bincode::bench_decoder               ... bench:      33,715 ns/iter (+/- 300) = 11 MB/s
test goser::bincode::bench_deserialize           ... bench:      36,804 ns/iter (+/- 329) = 9 MB/s
test goser::bincode::bench_encoder               ... bench:      34,695 ns/iter (+/- 149) = 11 MB/s
test goser::bincode::bench_populate              ... bench:      18,879 ns/iter (+/- 88)
test goser::bincode::bench_serialize             ... bench:      31,668 ns/iter (+/- 156) = 11 MB/s
test goser::capnp::bench_deserialize             ... bench:       2,049 ns/iter (+/- 87) = 218 MB/s
test goser::capnp::bench_deserialize_packed      ... bench:      10,707 ns/iter (+/- 258) = 31 MB/s
test goser::capnp::bench_populate                ... bench:         635 ns/iter (+/- 5)
test goser::capnp::bench_serialize               ... bench:      35,657 ns/iter (+/- 155) = 12 MB/s
test goser::capnp::bench_serialize_packed        ... bench:      37,881 ns/iter (+/- 146) = 8 MB/s
test goser::msgpack::bench_decoder               ... bench:      50,634 ns/iter (+/- 307) = 5 MB/s
test goser::msgpack::bench_encoder               ... bench:      25,738 ns/iter (+/- 90) = 11 MB/s
test goser::msgpack::bench_populate              ... bench:      18,900 ns/iter (+/- 138)
test goser::protobuf::bench_decoder              ... bench:       2,791 ns/iter (+/- 29) = 102 MB/s
test goser::protobuf::bench_encoder              ... bench:      75,414 ns/iter (+/- 358) = 3 MB/s
test goser::protobuf::bench_populate             ... bench:      19,248 ns/iter (+/- 92)
test goser::rustc_serialize_json::bench_decoder  ... bench:     109,999 ns/iter (+/- 797) = 5 MB/s
test goser::rustc_serialize_json::bench_encoder  ... bench:      58,777 ns/iter (+/- 418) = 10 MB/s
test goser::rustc_serialize_json::bench_populate ... bench:      18,887 ns/iter (+/- 76)
test goser::serde_json::bench_deserializer       ... bench:     104,803 ns/iter (+/- 770) = 5 MB/s
test goser::serde_json::bench_populate           ... bench:      18,890 ns/iter (+/- 69)
test goser::serde_json::bench_serializer         ... bench:      75,046 ns/iter (+/- 435) = 8 MB/s
```

After
```
test goser::bench_clone                          ... bench:      16,052 ns/iter (+/- 188) = 34 MB/s
test goser::bincode::bench_decoder               ... bench:      31,194 ns/iter (+/- 941) = 12 MB/s
test goser::bincode::bench_deserialize           ... bench:      33,934 ns/iter (+/- 352) = 10 MB/s
test goser::bincode::bench_encoder               ... bench:      30,737 ns/iter (+/- 1,969) = 13 MB/s
test goser::bincode::bench_populate              ... bench:      17,234 ns/iter (+/- 176)
test goser::bincode::bench_serialize             ... bench:      28,269 ns/iter (+/- 452) = 12 MB/s
test goser::capnp::bench_deserialize             ... bench:       2,019 ns/iter (+/- 85) = 221 MB/s
test goser::capnp::bench_deserialize_packed      ... bench:      10,662 ns/iter (+/- 527) = 31 MB/s
test goser::capnp::bench_populate                ... bench:         607 ns/iter (+/- 2)
test goser::capnp::bench_serialize               ... bench:      30,488 ns/iter (+/- 219) = 14 MB/s
test goser::capnp::bench_serialize_packed        ... bench:      33,731 ns/iter (+/- 201) = 9 MB/s
test goser::msgpack::bench_decoder               ... bench:      46,921 ns/iter (+/- 461) = 6 MB/s
test goser::msgpack::bench_encoder               ... bench:      22,315 ns/iter (+/- 96) = 12 MB/s
test goser::msgpack::bench_populate              ... bench:      17,268 ns/iter (+/- 73)
test goser::protobuf::bench_decoder              ... bench:       2,658 ns/iter (+/- 44) = 107 MB/s
test goser::protobuf::bench_encoder              ... bench:      71,024 ns/iter (+/- 359) = 4 MB/s
test goser::protobuf::bench_populate             ... bench:      17,704 ns/iter (+/- 104)
test goser::rustc_serialize_json::bench_decoder  ... bench:     107,867 ns/iter (+/- 759) = 5 MB/s
test goser::rustc_serialize_json::bench_encoder  ... bench:      52,327 ns/iter (+/- 479) = 11 MB/s
test goser::rustc_serialize_json::bench_populate ... bench:      17,262 ns/iter (+/- 68)
test goser::serde_json::bench_deserializer       ... bench:      99,156 ns/iter (+/- 657) = 6 MB/s
test goser::serde_json::bench_populate           ... bench:      17,264 ns/iter (+/- 77)
test goser::serde_json::bench_serializer         ... bench:      66,135 ns/iter (+/- 392) = 9 MB/s

```
2015-09-18 15:46:58 +02:00
Vadim Petrochenkov
1eb42f1c78 Add feature gate 2015-09-18 15:28:01 +03:00
Vadim Petrochenkov
605a472948 Add some more tests 2015-09-18 15:26:09 +03:00
Vadim Petrochenkov
5fa6e857c9 Implement empty struct with braces (RFC 218) 2015-09-18 15:26:08 +03:00
kud1ing
da059a4e28 Add 1.3 release date
As of http://blog.rust-lang.org/2015/09/17/Rust-1.3.html
2015-09-18 09:19:20 +02:00
Nick Cameron
269c59d341 Warn on pub extern crate.
Temporary 'fix' for #26775
2015-09-18 18:07:05 +12:00
Nick Cameron
66f662f37d Fix crash with --save-analysis
Should be lowering ast expressions to HIR expressions, not cheating via the hir map. That goes wrong now that there is not a 1:1 mapping between ast and hir (in the case of the crash due to ExprParen).
2015-09-18 16:41:11 +12:00
Colin Wallace
cbc9517b02 Clarify where let accepts a pattern, spatially 2015-09-17 21:39:19 -07:00
Dongie Agnir
5a91ba8e60 Fix spelling and remove weirdly placed comma. 2015-09-17 23:45:36 -04:00
bors
cff0411706 Auto merge of #28476 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #28276, #28314, #28422, #28435, #28451, #28466, #28470, #28471, #28473, #28474
- Failed merges:
2015-09-17 21:34:34 +00:00
Guillaume Gomez
bc72f540ac Add span_err_with_code method for BorrowckCtxt struct 2015-09-17 23:31:37 +02:00
Steve Klabnik
5faff5dbde Rollup merge of #28474 - tshepang:repetition, r=steveklabnik
It's clear it's the one being documented
2015-09-17 17:06:56 -04:00
Steve Klabnik
7a5cd3c274 Rollup merge of #28473 - tshepang:lowercase, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
cd5870f3a3 Rollup merge of #28471 - tshepang:markup, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
fcfcee1363 Rollup merge of #28470 - tshepang:idiom, r=steveklabnik 2015-09-17 17:06:56 -04:00
Steve Klabnik
36190ef91d Rollup merge of #28466 - baskerville:trpl-heap-highest-addr, r=steveklabnik
r? @steveklabnik
2015-09-17 17:06:55 -04:00
Steve Klabnik
cc664f1f44 Rollup merge of #28451 - dagnir:osx-req-wording, r=steveklabnik
Using "later" in this context makes more sense than "greater" so it's been changed to match the Linux requirement above it rather than the other way around.
2015-09-17 17:06:55 -04:00
Steve Klabnik
ae3c60d06f Rollup merge of #28435 - apasel422:issue-24533, r=nikomatsakis
Closes #24533.
2015-09-17 17:06:55 -04:00
Steve Klabnik
40c45ac86a Rollup merge of #28422 - christopherdumas:label_code, r=steveklabnik 2015-09-17 17:06:54 -04:00
Steve Klabnik
eeca6a430b Rollup merge of #28314 - tbu-:pr_atomics_are_send, r=brson 2015-09-17 17:06:54 -04:00
Steve Klabnik
54063e330a Rollup merge of #28276 - jackwilsonv:patch-5, r=Manishearth 2015-09-17 17:06:54 -04:00
Tshepang Lekhonkhobe
a3305f87c1 reference: actual keywords feel more appropriate 2015-09-17 22:55:40 +02:00
Tshepang Lekhonkhobe
22fc5f480d reference: mark that up to make it more clear it is a keyword 2015-09-17 22:52:39 +02:00
Tshepang Lekhonkhobe
553a2f1ead doc: follow idiom in code snippet 2015-09-17 22:13:05 +02:00
bors
a06812f57b Auto merge of #28459 - apasel422:tests, r=alexcrichton
Closes #23543.
Closes #23544.
2015-09-17 19:50:31 +00:00
Tshepang Lekhonkhobe
25cc001c19 doc: no need to mention the method by name
It's clear it's the one being documented
2015-09-17 21:46:47 +02:00
bors
24fdaedaff Auto merge of #28457 - VHaravy:test-run-pass-x86stdcall2, r=huonw
Type `HANDLE` is defined on Windows as `PVOID`. Test `run-pass/x86stdcall2` defined it as `u32` that caused access violation in `catch_panic` routine at the line:

```
try!(unwind::try(move || *result = Some(f())))
```

The original failure is as follows:

```
---- [run-pass] run-pass/x86stdcall2.rs stdout ----

error: test run failed!
status: exit code: -1073741819
command: PATH="x86_64-pc-windows-msvc/stage2/bin/rustlib/x86_64-pc-windows-msvc/lib;D:\Sources\Rust\x86_64-pc-windows-msvc\stage2\bin;C:\MSYS2\mingw64\bin;C:\MSYS2\usr\local\bin;C:\MSYS2\usr\bin;C:\MSYS2\usr\bin;C:\Program Files\Python 3;C:\Program Files\Python 3\Scripts;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files\SlikSvn\bin;C:\Program Files\System Tools;C:\Program Files (x86)\System Tools;C:\Program Files\Vim\vim74;C:\Program Files\Rust\bin;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\MiKTeX\miktex\bin\x64;C:\Program Files (x86)\Pandoc;C:\Program Files\LLVM\bin;C:\Program Files\KDiff3;C:\Program Files\Git\cmd;C:\Users\Vitali\AppData\Local\atom\bin;C:\MSYS2\usr\bin\site_perl;C:\MSYS2\usr\bin\vendor_perl;C:\MSYS2\usr\bin\core_perl" x86_64-pc-windows-msvc/test/run-pass\x86stdcall2.stage2-x86_64-pc-windows-msvc.exe
stdout:
------------------------------------------

------------------------------------------
stderr:
------------------------------------------

------------------------------------------

thread '[run-pass] run-pass/x86stdcall2.rs' panicked at 'explicit panic', D:/Sources/Rust/src/compiletest\runtest.rs:1501
```

P.S. I compiled rust for `x86_64-pc-windows-msvc`.
2015-09-17 18:06:33 +00:00
Bastien Dejean
6d2cb6c688 trpl: Fix off-by-one highest memory address 2015-09-17 18:53:01 +02:00
bors
8ea2198215 Auto merge of #28421 - alexcrichton:msvc-rmake, r=alexcrichton
Work carried over from #27938
2015-09-17 16:22:46 +00:00
Andrew Paseltiner
519527b1f5 Remove empty test files
It is likely that these were committed by mistake.
2015-09-17 12:04:34 -04:00
Alex Crichton
0675dffac4 rmake: Get all tests passing on MSVC 2015-09-17 08:40:33 -07:00
bors
2be0d0ad92 Auto merge of #28428 - dotdash:same_adjust, r=nikomatsakis
Currently, we're generating adjustments, for example, to get from &[u8]
to &[u8], which is unneeded and kicks us out of trans_into()
into trans() which means an additional stack slot and copy in the
unoptimized code.
2015-09-17 14:40:59 +00:00
Andrew Paseltiner
83b5370d5d Add tests for #23543, #23544
Closes #23543.
Closes #23544.
2015-09-17 09:33:41 -04:00
Björn Steinbrink
6def06c973 Don't create adjustments from a type to itself
Currently, we're generating adjustments, for example, to get from &[u8]
to &[u8], which is unneeded and kicks us out of trans_into() into
trans() which means an additional stack slot and copy in the unoptimized
code.
2015-09-17 15:10:21 +02:00
bors
c9fc4efd24 Auto merge of #28455 - nrc:span-bang, r=alexcrichton
I can't see how to test this.

Fixes https://github.com/nrc/rustfmt/issues/320
2015-09-17 12:58:22 +00:00
Vadim Petrochenkov
1599c1675f Fix code broken by rebase 2015-09-17 15:19:24 +03:00