Guillaume Gomez
6e1c675ff0
Add error codes for librustc_typeck
2015-09-20 12:02:56 +02:00
whitequark
c5fa7776df
Do not drop_in_place elements of Vec<T> if T doesn't need dropping
...
With -O2, LLVM's inliner can remove this code, but this does not happen
with -O1 and lower. As a result, dropping Vec<u8> was linear with length,
resulting in abysmal performance for large buffers.
2015-09-20 11:17:19 +03:00
bors
25aaeb40b1
Auto merge of #28529 - Manishearth:rollup, r=Manishearth
...
- Successful merges: #28463 , #28507 , #28522 , #28525 , #28526
- Failed merges:
2015-09-20 07:32:46 +00:00
Manish Goregaokar
d7ec69a652
Rollup merge of #28526 - Manishearth:expand-clone, r=eddyb
...
This reduces some clones of `Vec`s. These are not deep copies since the
token tree is made using `Rc`s, so this won't be a major improvement.
r? @eddyb
2015-09-20 11:16:27 +05:30
Manish Goregaokar
8f8fe8194d
Rollup merge of #28525 - Wallacoloo:book-4.8-double-more, r=steveklabnik
...
This is a simple grammar fix in which the previous author accidentally repeated a word when (s)he shouldn't have.
2015-09-20 11:16:27 +05:30
Manish Goregaokar
fb690c7af6
Rollup merge of #28522 - apasel422:issue-28091, r=alexcrichton
...
Closes #28091 .
r? @huonw
2015-09-20 11:16:27 +05:30
Manish Goregaokar
dc377b21e8
Rollup merge of #28507 - Manishearth:const-stable, r=alexcrichton
...
Fixes #28490
cc #24111
2015-09-20 11:16:27 +05:30
Manish Goregaokar
d007eb628a
Rollup merge of #28463 - critiqjo:book-concurrency, r=steveklabnik
...
Fixes #28458
Details about `Arc` may be too soon to be described together with `Sync`... Tell me what you think.
r? @steveklabnik
2015-09-20 11:16:26 +05:30
bors
fd38a75077
Auto merge of #28503 - marcusklaas:pub-extern, r=alexcrichton
...
Fixes https://github.com/rust-lang/rust/issues/28472 .
2015-09-20 05:44:45 +00:00
bors
fbce4503f8
Auto merge of #28519 - wthrowe:fixup-28321, r=alexcrichton
...
I assume the expected error changed during the development of pull
request #28321 and that wasn't noticed because the test was
accidentally not running.
r? @nikomatsakis
2015-09-20 03:57:13 +00:00
bors
23b1e4807e
Auto merge of #28506 - Manishearth:no_mac, r=eddyb
...
It's not being called or used, and `Mac`s don't exist at either lint phase.
2015-09-20 02:00:04 +00:00
Manish Goregaokar
dcf49b5f68
Don't recommend const fns on a stable build without a note about nightlies
...
Fixes #28490
2015-09-20 07:12:36 +05:30
Manish Goregaokar
8aef16c2a5
Move tts instead of cloning in expansion
2015-09-20 06:45:19 +05:30
Colin Wallace
a35f1b29d7
Fix "more more" typo
2015-09-19 17:19:29 -07:00
bors
50048c00b9
Auto merge of #28512 - lfairy:snapshot-pyc, r=alexcrichton
...
Closes #28508
r? @brson
2015-09-20 00:12:12 +00:00
Andrew Paseltiner
6fa0ff25bd
Feature-gate #[no_debug]
and #[omit_gdb_pretty_printer_section]
...
Closes #28091 .
2015-09-19 19:39:25 -04:00
Wesley Wiser
974dfe8e31
Split out the UNUSED_* lints into a new module
...
Part of #22206
2015-09-19 17:35:18 -04:00
Wesley Wiser
ed77fcc8a6
Split out the bad_style lints into a new module
...
Part of #22206
2015-09-19 17:35:18 -04:00
bors
783c3fcc1e
Auto merge of #28345 - japaric:op-assign, r=nmatsakis
...
Implements overload-able augmented/compound assignments, like `a += b` via the `AddAssign` trait, as specified in RFC [953]
[953]: https://github.com/rust-lang/rfcs/blob/master/text/0953-op-assign.md
r? @nikomatsakis
2015-09-19 21:19:29 +00:00
Amit Aryeh Levy
85f48d300a
Make FixedSizeArray an unsafe trait
2015-09-19 15:33:34 -04:00
bors
837840c61f
Auto merge of #28516 - steveklabnik:rollup, r=steveklabnik
...
- Successful merges: #28400 , #28430 , #28443 , #28483 , #28485 , #28496 , #28511 , #28515
- Failed merges:
2015-09-19 19:28:59 +00:00
William Throwe
a51ae514ab
Move test to the right directory and make it pass
...
I assume the expected error changed during the development of pull
request #28321 and that wasn't noticed because the test was
accidentally not running.
2015-09-19 13:54:42 -04:00
bors
6db1a0ea7c
Auto merge of #28497 - apasel422:issue-28493, r=Gankro
...
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-19 17:40:56 +00:00
critiqjo
a0f214e257
trpl: Improve clarity in Concurrency
2015-09-19 21:11:17 +05:30
Steve Klabnik
234f81c4a9
Rollup merge of #28515 - alex:patch-1, r=steveklabnik
...
Repertory is a real world, but it doesn't really make sense in that context.
2015-09-19 11:15:49 -04:00
Steve Klabnik
0622cf3ddd
Rollup merge of #28511 - llogiq:printdoc, r=steveklabnik
...
This closes #28510 .
2015-09-19 11:15:49 -04:00
Steve Klabnik
b2c7e7791a
Rollup merge of #28496 - davidszotten:fix_error_anchors, r=steveklabnik
2015-09-19 11:15:48 -04:00
Steve Klabnik
d557f4a60f
Rollup merge of #28485 - Wallacoloo:clarify-let-lhs, r=alexcrichton
...
In code like `let x = 5`, I am initially confused as to the meaning of "let doesn't take a name on the left hand side, it actually accepts a pattern." - I interpret that as the pattern being located as: `<pattern> let [...]`.
I think what is meant is that the name/pattern is on the left hand side *of the assignment*, rather than to the left of the *let* statement. This change clarifies that.
2015-09-19 11:15:48 -04:00
Steve Klabnik
00d64d6768
Rollup merge of #28483 - dagnir:compiler-test-doc-cleanup, r=alexcrichton
...
Fix some minor spelling errors, remove a weirdly placed comma.
2015-09-19 11:15:48 -04:00
Steve Klabnik
f1473b6c00
Rollup merge of #28443 - GuillaumeGomez:error_codes, r=Manishearth
...
r? @Manishearth
2015-09-19 11:15:48 -04:00
Steve Klabnik
d407903898
Rollup merge of #28430 - apasel422:issue-14698, r=alexcrichton
...
Emit an error upon failing to create a temp dir instead of panicking
Closes #14698 .
2015-09-19 11:15:47 -04:00
Steve Klabnik
6872d13e96
Rollup merge of #28400 - badboy:disable-browser-history-on-file, r=steveklabnik
...
history.pushState is defined, but not working whenever document.origin is "null"
(literally that string, not just the null object).
This is due to some security considerations and is unlikely to be ever working.
For now just disable the usage of the history API when the documentation
is accessed through a file:/// URL.
See https://code.google.com/p/chromium/issues/detail?id=301210 for a
Chrome-specific issue on the history API on file:/// URLs
Closes #25953
2015-09-19 11:15:47 -04:00
Guillaume Gomez
1adcfb8c13
Add librustc_trans error codes
2015-09-19 17:04:27 +02:00
bors
0b5b029da1
Auto merge of #28494 - bluss:vecdeque-zst, r=eddyb
...
VecDeque: Use power of two capacity even for zero sized types
VecDeque depends on using a power of two capacity. Use the largest
possible power of two capacity for ZSTs.
Fixes #28488
2015-09-19 14:23:46 +00:00
bors
655b2ef45f
Auto merge of #28495 - semarie:stdcpp-name, r=alexcrichton
...
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.
r? @alexcrichton
I added this support globally instead of just for OpenBSD as it isn't specially related to OpenBSD (except OpenBSD use it for gcc-4.9). And as I would had to change `llvm.mk', having just a default value in `configure' for others platforms won't be very useful.
2015-09-19 12:35:23 +00:00
Alex Gaynor
a2fbf9da29
Fixed an apparent typo
...
Repertory is a real world, but it doesn't really make sense in that context.
2015-09-19 08:10:54 -04:00
David Szotten
5ab3058569
change back to anchors; divs break md
2015-09-19 12:06:36 +01:00
Ulrik Sverdrup
66f5dc1347
VecDeque: Use power of two capacity even for zero sized types
...
VecDeque depends on using a power of two capacity. Use the largest
possible power of two capacity for ZSTs.
2015-09-19 12:50:52 +02:00
David Szotten
f7d8b41814
missing punctuation
2015-09-19 11:45:30 +01:00
David Szotten
436e8d69bf
its vs it's
2015-09-19 11:45:09 +01:00
David Szotten
3a5e9a3f99
wrap more referenced code blocks in divs
2015-09-19 11:44:55 +01:00
David Szotten
30c91cd7f7
angle brackets get mis-parsed. bug?
2015-09-19 11:43:57 +01:00
David Szotten
4e42fcd92a
link needs puncuation
2015-09-19 11:43:32 +01:00
Vadim Petrochenkov
b44cb01bd7
Don't use std in stability tests
2015-09-19 12:16:30 +03:00
bors
b3afb16d24
Auto merge of #28491 - dotdash:noadjust, r=nikomatsakis
...
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-19 08:26:55 +00:00
Chris Wong
7f43941110
Don't include *.pyc files in source tarball
...
Closes #28508
2015-09-19 20:04:10 +12:00
llogiq
49b1902345
added panic docs for print\! and println\! macros
2015-09-19 09:04:12 +02:00
bors
791cc1616a
Auto merge of #28489 - kud1ing:patch-1, r=alexcrichton
...
As of http://blog.rust-lang.org/2015/09/17/Rust-1.3.html
2015-09-19 06:38:55 +00:00
bors
d97be7bd70
Auto merge of #28486 - nrc:pub-extern-crate, r=alexcrichton
...
Temporary 'fix' for #26775
r? @brson
2015-09-19 04:51:13 +00:00
Manish Goregaokar
19d41ef6a8
Remove check_mac
2015-09-19 08:30:00 +05:30