Commit Graph

64397 Commits

Author SHA1 Message Date
Mark Simulacrum
8b93680d28 Rollup merge of #42006 - jseyfried:fix_include_regression, r=nrc
Fix ICE on `include!(line!())` (regression)

Fixes #41776.
r? @nrc
2017-05-19 14:16:15 -06:00
Mark Simulacrum
8292136fb0 Rollup merge of #41971 - japaric:pre-link-args, r=alexcrichton
add -Z pre-link-arg{,s} to rustc

This PR adds two unstable flags to `rustc`: `-Z pre-link-arg` and `-Z
pre-link-args`. These are the counterpart of the existing `-C link-arg{,s}`
flags and can be used to pass extra arguments at the *beginning* of the linker
invocation, before the Rust object files are passed.

I have [started] a discussion on the rust-embedded RFCs repo about settling on a
convention for passing extra arguments to the linker and there are two options
on discussion: `.cargo/config`'s `target.$T.rustflags` and custom target
specification files (`{pre,,post}-link-args` fields). However, to compare these
two options on equal footing this `-Z pre-link-arg` feature is required.

[started]: https://github.com/rust-embedded/rfcs/pull/24

Therefore I'm requesting landing this `-Z pre-link-arg` flag as an experimental
feature to evaluate these two options.

cc @brson
r? @alexcrichton
2017-05-19 14:16:14 -06:00
Mark Simulacrum
04b07798fc Rollup merge of #41958 - malbarbo:docker-share, r=alexcrichton
ci: allows files to be shared by docker images

Change `src/ci/docker/run.sh` to allow files to be shared when building docker containers. For while, only android related shell scripts are shared. Others containers can be updated at any time.

sccache is installed last, as it is frequently updated this avoids the need to rebuilt the whole container.
2017-05-19 14:16:14 -06:00
Mark Simulacrum
d8d2db264b Rollup merge of #41910 - mersinvald:master, r=Mark-Simulacrum
Number of filtered out tests in tests summary

Closes #31905
2017-05-19 14:16:13 -06:00
Mark Simulacrum
d7a5390a67 Rollup merge of #41870 - excaliburHisSheath:iss29367-windows-docs, r=frewsxcv
Improve docs in os::windows::ffi and os::windows::fs

Part of #29367

This PR makes changes to the documentation in `os::windows::ffi` and `os::windows::fs` with the goal of fleshing them out and bringing them in line with Rust's quality standards.

r? @steveklabnik
2017-05-19 14:16:12 -06:00
bors
543691d0eb Auto merge of #41439 - ivandardi:master, r=BurntSushi
Stabilize step_by by adding it to Iterator (issue #27741)

Inspired by itertools' `take()` method. See issue #27741
2017-05-19 17:42:28 +00:00
David LeGare
a89292514b Fix doc test failure for OpenOptionsExt 2017-05-19 07:29:52 -05:00
Michael Woerister
b5acbd3f03 debuginfo: Generate unique DW_AT_names for compilation units to work around OSX linker bug. 2017-05-19 13:06:30 +02:00
Simonas Kazlauskas
41debc365e Try to optimise char patterns 2017-05-19 10:14:13 +03:00
Jorge Aparicio
e4f9db7b8f core: fix unused_macro warning
when compiling the crate for a target with max-atomic-width = 0

fixes #42097
2017-05-18 23:33:08 -05:00
QuietMisdreavus
dd0855d44b fix casting of PRIO_PGRP 2017-05-18 22:24:34 -05:00
David LeGare
4cd838b274 Normalize docs in windows::ffi and windows::fs
- Remove `()` parens when referencing functions in docs.
- Change some examples to be no_run instead of ignore.
- Normalize style in examples for `OpenOptionsExt`.
- Fix typo in windows mod docs.
2017-05-18 21:10:15 -05:00
Oliver Middleton
e48086c04f rustdoc: Fix implementors list javascript
* Use a different loop variable, `i` was already taken. This caused
missing items in the implementors list.
* Use `.getAttribute('href')` rather than `.href` to get the relative
URL which is what it needs to actually fix the links.
2017-05-19 02:59:04 +01:00
Andre Bogus
fc513861b1 fix some clippy warnings in librustc_errors 2017-05-19 01:20:48 +02:00
Josh Stone
e86588e228 Give a nicer error for non-Unicode arguments to rustc and rustdoc
Previously, any non-Unicode argument would panic rustc:

```
$ rustc $'foo\x80bar'
error: internal compiler error: unexpected panic

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report:
https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

thread 'rustc' panicked at 'called `Result::unwrap()` on an `Err` value:
"foo�bar"', /checkout/src/libcore/result.rs:859 note: Run with
`RUST_BACKTRACE=1` for a backtrace.
```

Now it gives a clean error:

```
$ rustc $'foo\x80bar'
error: Argument 1 is not valid Unicode: "foo�bar"
```

Maybe fixes #15890, although we still can't *compile* arbitrary file names.
2017-05-18 16:11:22 -07:00
bors
b21577e1e8 Auto merge of #42086 - alexcrichton:update-cargo, r=Mark-Simulacrum
Update the Cargo submodules

More info [here](https://github.com/rust-lang/rust/pull/42070#issuecomment-302469046) as to what's going on.
2017-05-18 23:06:11 +00:00
Marco A L Barbosa
9b184c0c17 ci: fix dist-powerpc-linux image 2017-05-18 17:11:46 -03:00
Guillaume Gomez
0c0d11b822 Add help message if a FnOnce is moved 2017-05-18 21:29:04 +02:00
Simonas Kazlauskas
c5163aadc5 Fix x.py 2017-05-18 21:22:15 +03:00
Marc-Antoine Perennou
801e2b7bdf rustbuild: refactor install
Introduce a new Installer object that hold a reference to all the
configured paths for installation

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2017-05-18 18:59:06 +02:00
Marc-Antoine Perennou
ecfdc9ac1b rustbuild: install rust-analysis and rust-src when extended build is enabled
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2017-05-18 18:58:58 +02:00
Alex Crichton
cd6cbd7a95 Update the Cargo submodules 2017-05-18 09:52:07 -07:00
QuietMisdreavus
4f88106527 update config name and description for low-priority 2017-05-18 11:00:31 -05:00
Marco A L Barbosa
502eadbf8f ci: add filesystem layout docs 2017-05-18 09:21:11 -03:00
Marco A L Barbosa
d15c950ac6 ci: move shared scripts to src/ci/docker/scripts/ 2017-05-18 08:33:10 -03:00
Michael Kohl
b2fc7b1cbe Add documentation for ExitStatus
As requested in #29370.
2017-05-18 16:58:40 +07:00
bors
0ed1ec9f9e Auto merge of #42055 - michaelwoerister:reenable-incremental-cc, r=nikomatsakis
Enable cross-crate incremental compilation by default.

Now that direct metadata hashing has been implemented for a while and we haven't seen any problems with it over at [rust-icci](https://travis-ci.org/rust-icci/), let's re-enable cross crate support for incremental compilation again.

r? @nikomatsakis
2017-05-18 09:32:28 +00:00
Michael Woerister
4549423f28 Use 128 instead of 64 bits for DefPath hashes 2017-05-18 11:10:11 +02:00
Michael Woerister
474cc91440 Use in-memory representation for Fingerprint that is more amenable to hashing. 2017-05-18 10:57:37 +02:00
Dylan Maccora
fb19560054 std::env docs 2017-05-18 18:26:47 +10:00
Michael Woerister
1b8df3d7fb Enable cross-crate incremental compilation by default. 2017-05-18 10:12:13 +02:00
pravic
1eb6639508 Make documentation works again by removing two unnecessary ES6 pieces. 2017-05-18 10:35:18 +03:00
Denis Andrejew
f4e33a011e fix typo in libstd/sync/mpsc/mod.rs docs 2017-05-18 08:45:18 +02:00
Tshepang Lekhonkhobe
b9552963d1 misc doc improvements for std::env 2017-05-18 06:47:58 +02:00
bors
6af8c6c7d1 Auto merge of #42073 - mersinvald:update-cargo-submodule, r=Mark-Simulacrum
Cargo submodule update

Required for https://github.com/rust-lang/rust/pull/41910
r? @Mark-Simulacrum
2017-05-18 03:11:07 +00:00
bors
31bfa964b8 Auto merge of #41639 - ishitatsuyuki:unify-tools, r=alexcrichton
Unify tools building

Close #41601

Time saving for up to 10 minutes. Cargo is now only compiled once.

Downsides:

- Out of tree Cargo.lock maintenance
- Cargo.toml `[replace]` version maintenance
2017-05-18 00:36:03 +00:00
Nick Cameron
a2566301e1 Add an option to the parser to avoid parsing out of line modules
This is useful if parsing from stdin or a String and don't want to try and read in a module from another file. Instead we just leave a stub in the AST.
2017-05-18 11:03:07 +12:00
Mike Lubinets
3fa04a9a93 Cargo submodule update 2017-05-18 01:55:15 +03:00
Florian Hartwig
eb703f7851 Fix off-by-one error in column number in explain_span. 2017-05-18 00:21:57 +02:00
bors
4640e18572 Auto merge of #41911 - michaelwoerister:querify_trait_def, r=nikomatsakis
Remove interior mutability from TraitDef by turning fields into queries

This PR gets rid of anything `std::cell` in `TraitDef` by
- moving the global list of trait impls from `TraitDef` into a query,
- moving the list of trait impls relevent for some self-type from `TraitDef` into a query
- moving the specialization graph of trait impls into a query, and
- moving `TraitDef::object_safety` into a query.

I really like how querifying things not only helps with incremental compilation and on-demand, but also just plain makes the code cleaner `:)`

There are also some smaller fixes in the PR. Commits can be reviewed separately.

r? @eddyb or @nikomatsakis
2017-05-17 21:44:08 +00:00
Marco A L Barbosa
307d8e5aa5 ci: allows shared scripts 2017-05-17 18:20:50 -03:00
Guillaume Gomez
747287a2b3 Add better error message when == operator is badly used 2017-05-17 22:17:53 +02:00
Pietro Albini
93c1f2472b
Stabilize the loop_break_value feature 2017-05-17 21:34:37 +02:00
Alex Crichton
db69d894e7 Reset submodule management to what master does
Basically just translate what's done on master in Rust to Python here.
2017-05-17 09:15:44 -07:00
bors
7b5c3d2b20 Auto merge of #41857 - dhardy:master, r=steveklabnik
loop_break_value: add documentation for book

Some notes at the top of the file.

r? @steveklabnik
2017-05-17 15:42:55 +00:00
Tatsuyuki Ishi
182a4ff037 Whitelist strings crate for license
As we can't wait for the maintainer.
2017-05-18 00:30:55 +09:00
Tatsuyuki Ishi
510d6b8afb Move submodule initialization to bootstrap.py 2017-05-18 00:30:55 +09:00
Tatsuyuki Ishi
e119a63901 Add metadata suffix, close rust-lang/cargo#4028 2017-05-18 00:30:55 +09:00
Tatsuyuki Ishi
0e79b9790a Unify all stage2 tools into a workspace
This avoids double compiled Cargo. Hopefully this would speed up (extended) compilation for ~10m.

Notes: when updating Cargo submodule, the replacement version may also need to be updated.
2017-05-18 00:30:54 +09:00
Sylvestre Ledru
1b6a182cf1 Improve the error management when /proc is not mounted
This PR does two things:
* Triggers an error on GNU/Linux & Android when /proc/self/exe doesn't exist
* Handle the error properly
2017-05-17 15:14:30 +02:00