Commit Graph

63666 Commits

Author SHA1 Message Date
bors
c7e724a148 Auto merge of #40434 - mattico:splice-update, r=alexcrichton
Implement Vec::splice and String::splice (RFC 1432)

RFC: rust-lang/rfcs#1432, tracking issue: #32310
A rebase of https://github.com/rust-lang/rust/pull/32355 with a few more tests.

Let me know if you have any ideas for more tests.

cc @SimonSapin
2017-04-25 10:34:07 +00:00
Cameron Hart
72acea0e80 Add missing struct field index adjustments.
Some accesses in OperandPairs were missing. Fixes #41479.
2017-04-25 20:27:29 +10:00
Guillaume Gomez
3f97b2a65c Add ui tests 2017-04-25 12:21:28 +02:00
steveklabnik
696df71d0c Clarify "side effect" in peek's docs
Fixes #33269
2017-04-25 05:38:26 -04:00
steveklabnik
dce33e96bc Clarify the doc index
With regards to the unstable book, the reference, and the
processes involved.

Also, fix up a link by pointing to the new tracking issue rather than
the older one.

Fixes #41285
2017-04-25 05:35:51 -04:00
Michael Wu
c558a2ae37 Add Hexagon support
This requires an updated LLVM with D31999 and D32000 to build libcore.

A basic hello world builds and runs successfully on the hexagon simulator.
2017-04-25 01:56:44 -04:00
Gianni Ciccarelli
715811d0be support default impl for specialization
pr review
2017-04-25 05:28:22 +00:00
kennytm
86747a9952
Force link with an absolute rpath when using sanitizer on macOS. 2017-04-25 10:31:01 +08:00
kennytm
00dff0aa59
Support AddressSanitizer and ThreadSanitizer on x86_64-apple-darwin.
ASan and TSan are supported on macOS, and this commit enables their
support.

The sanitizers are always built as *.dylib on Apple platforms, so they
cannot be statically linked into the corresponding `rustc_?san.rlib`. The
dylibs are directly copied to `lib/rustlib/x86_64-apple-darwin/lib/`
instead.

Note, although Xcode also ships with their own copies of ASan/TSan dylibs,
we cannot use them due to version mismatch.

There is a caveat: the sanitizer libraries are linked as @rpath, so the
user needs to additionally pass `-C rpath`:

    rustc -Z sanitizer=address -C rpath file.rs
                               ^~~~~~~~

Otherwise there will be a runtime error:

    dyld: Library not loaded: @rpath/libclang_rt.asan_osx_dynamic.dylib
      Referenced from: /path/to/executable
      Reason: image not found
    Abort trap: 6

The next commit includes a temporary change in compiler to force the linker
to emit a usable @rpath.
2017-04-25 10:31:01 +08:00
kennytm
93d57d64b8
Pass --format-version 1 to cargo metadata.
Suppress warning introduced by rust-lang/cargo#3841.
2017-04-25 10:31:00 +08:00
Sergio Benitez
c168d8bb07 Add cautions to io::get_mut method documentation. 2017-04-24 17:12:42 -07:00
Sergio Benitez
76397aea50 Reference tracking issue for more_io_inner_methods. 2017-04-24 17:12:38 -07:00
Sergio Benitez
aab87e3e9e Add more_io_inner_methods feature to unstable book. 2017-04-24 16:36:50 -07:00
Sergio Benitez
a765dcaf53 Add internal accessor methods to io::{Chain, Take}.
Resolves #29067.
2017-04-24 16:36:50 -07:00
Andrew Gaspar
70e673952e Adds rust-windbg.cmd script 2017-04-24 16:26:00 -07:00
Tobias Bucher
957d51aecb Fix a copy-paste error in Instant::sub_duration
Fixes #41514.
2017-04-25 01:02:59 +02:00
bors
0777c757a6 Auto merge of #40123 - TimNN:llvm40, r=alexcrichton
LLVM 4.0 Upgrade

Since nobody has done this yet, I decided to get things started:

**Todo:**

* [x] push the relevant commits to `rust-lang/llvm` and `rust-lang/compiler-rt`
* [x] cleanup `.gitmodules`
* [x] Verify if there are any other commits from `rust-lang/llvm` which need backporting
* [x] Investigate / fix debuginfo ("`<optimized out>`") failures
* [x] Use correct emscripten version in docker image

---

Closes #37609.

---

**Test results:**

Everything is green 🎉
2017-04-24 22:18:16 +00:00
Clar Charr
c66c6e9697 More methods for str boxes. 2017-04-24 17:51:49 -04:00
Alex Crichton
009f45f8f1 Run tests for the cargo submodule in tree
Previously the `cargotest` suite would run some arbitrary revision of Cargo's
test suite, but now that we're bundling it in tree we should be running the
Cargo submodule's test suite instead.
2017-04-24 08:08:40 -07:00
Eduard-Mihai Burtescu
decf7598ef rustc: use tcx.at(span) to set the location of a query. 2017-04-24 18:06:39 +03:00
Matt Ickstadt
feae5a08a2 Add Splice forget test 2017-04-24 09:49:29 -05:00
Jessica Hamilton
0d63f13378 Haiku: add missing cases of using LIBRARY_PATH 2017-04-24 14:29:39 +00:00
Eduard-Mihai Burtescu
9bde6b6d96 rustc: expose the common DUMMY_SP query case as tcx methods. 2017-04-24 17:23:43 +03:00
Guillaume Gomez
b10c04472b Remove strip prefix 2017-04-24 15:16:52 +02:00
Guillaume Gomez
bd880bc6bf Add tests for module suggestions 2017-04-24 15:16:52 +02:00
Guillaume Gomez
e482529022 Fix invalid module suggestion 2017-04-24 15:14:15 +02:00
bors
63c77214c1 Auto merge of #40634 - GuillaumeGomez:refcell-docs, r=steveklabnik
Add more explanation on RefCell::get_mut

Fixes #40203.

r? @rust-lang/docs
2017-04-24 13:09:35 +00:00
Guillaume Gomez
3ad844cfe2 Add more explanation on RefCell::get_mut 2017-04-24 15:08:39 +02:00
Eduard-Mihai Burtescu
612bb1f54e rustc: rename some of the queries to match tcx methods. 2017-04-24 15:20:52 +03:00
steveklabnik
f852e3fcbc use the word 'length' in Vec::len's docs
Fixes #37866
2017-04-24 07:47:05 -04:00
Gianni Ciccarelli
b0fca5f790 support default impl for specialization
rebase after support for llvm-3.7
2017-04-24 10:08:48 +00:00
Gianni Ciccarelli
6427fdce7a support default impl for specialization
fix tidy
2017-04-24 10:08:48 +00:00
Gianni Ciccarelli
116e9831a5 support default impl for specialization
this commit implements the first step of the `default impl` feature:
all items in a `default impl` are (implicitly) `default` and hence
specializable.
In order to test this feature I've copied all the tests provided for the
`default` method implementation (in run-pass/specialization and
compile-fail/specialization directories) and moved the `default` keyword
from the item to the impl.
See referenced issue for further info
2017-04-24 10:08:48 +00:00
bors
846891aeff Auto merge of #41494 - withoutboats:associated-consts-are-not-object-safe, r=eddyb
Associated consts are not object safe.

fixes #26847

r? @eddyb
2017-04-24 10:06:41 +00:00
Without Boats
5dc43d272d Feature gate in test. 2017-04-24 02:42:36 -07:00
Without Boats
95ffda1e9e Style. 2017-04-24 01:40:17 -07:00
Without Boats
ed5d09d8f3 Fix type error. 2017-04-24 01:20:36 -07:00
Without Boats
bd31498ef6 Add compile-fail test. 2017-04-24 01:19:12 -07:00
Without Boats
86b10671db Associated consts are not object safe. 2017-04-23 22:00:09 -07:00
Scott McMurray
f8c6436173 Step::replace_one should put a one, not a zero (Issue #41492)
Turns out all six of these impls are incorrect.
2017-04-23 21:47:09 -07:00
Matt Ickstadt
7b86ba0d8d Add splice to the unstable book. 2017-04-23 21:23:50 -05:00
Matt Ickstadt
c3baa8c0a7 Use Vec::splice impl in string::Splice::drop() 2017-04-23 21:23:50 -05:00
Matt Ickstadt
cec00bab1d Improve splice docs and tests 2017-04-23 21:23:50 -05:00
Matt Ickstadt
b85e2e4735 Update splice impl 2017-04-23 21:23:45 -05:00
Simon Sapin
2111aff682 Add Vec::splice and String::splice 2017-04-23 19:19:38 -05:00
bors
15ce54096a Auto merge of #41486 - arielb1:select-where, r=eddyb
traits::select: quickly filter out predicates from other traits

this improves most pre-trans passes's performance by ~1%.

That missed the spring cleaning PR because I wanted to ship it.

r? @eddyb
2017-04-23 23:06:50 +00:00
bors
2bd4b5c6db Auto merge of #41485 - arielb1:dtorck-constraint, r=eddyb
cache dtorck constraints on ADTs

This avoids visiting the fields of all structs multiple times, improving item-bodies checking time by 10% (!).

Not sure whether we want this in 1.18 or 1.19. It's a big-ish patch, but the 10% win is very tempting.

r? @eddyb
2017-04-23 20:11:50 +00:00
Ariel Ben-Yehuda
d3476f4b76 cache ADT dtorck results
This avoids visiting the fields of all structs multiple times, improving
item-bodies checking time by 10% (!).
2017-04-23 23:09:21 +03:00
Ariel Ben-Yehuda
eadb049799 traits::select: quickly filter out predicates from other traits
this improves most pre-trans passes's performance by ~1%.
2017-04-23 23:05:25 +03:00
Tim Neumann
8994277657 FIN: windows-gnu: statically link gcc_s, pthread with llvm 2017-04-23 22:00:03 +02:00