Commit Graph

64425 Commits

Author SHA1 Message Date
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
bors
2b6ed3a051 Auto merge of #42041 - Keruspe:master, r=alexcrichton
rustbuild: fix bash completion installation dir
2017-05-17 12:50:14 +00:00
Diggory Hardy
7ab35b703a loop_break_value doc: remove note about other loops 2017-05-17 13:00:10 +01:00
Niko Matsakis
19bf544b25 introduce local-scope to prevent storagelive/storagedead in statics
cc #36799
2017-05-17 07:39:57 -04:00
bors
208d23a996 Auto merge of #41961 - kennytm:fix-35829, r=petrochenkov
Fix #35829 (`quote!()` does not handle `br#"…"#`)

Fix issue #35829 (syntax extension's `quote_expr!()` does not handle `b"…"` and proc_macro's `quote!()` does not handle `r#"…"#`)

* Handles `b"…"`, `br#"…"#` and `...` for `quote_expr!()`.
* Refactored the match statement to allow it to complain loudly on any unhandled token.
* Similarly, proc_macro's `quote!()` did not handle `br#"…"#` or `r#"…"#`, so this PR fixes it too.
2017-05-17 08:14:55 +00:00
kennytm
b384b18d5d
Refactor: Move the mutable parts out of LintStore. Fix #42007.
* #42007 happens because the Session LintStore is emptied when linting.
* The Session LintStore is emptied because the checker (Early/LateContext)
  wants ownership.
* The checker wants ownership because it wants to mutate the pass objects
  and lint levels.

The ownership of the whole store is not essential, only the lint levels and
pass objects need to be owned. Therefore, these parts are extracted out of
the LintStore into a separate structure `LintSession`. The "check crates"
methods can operate on `&mut LintSession` instead of `&mut LintStore`.

This is a minor BREAKING CHANGE for lint writers since the `LintContext`
trait is changed: the `mut_lints` and `level_stack` methods are removed.
But no one outside of `librustc/lint/context.rs` is using these functions,
so it should be safe.
2017-05-17 16:09:39 +08:00
bors
42e3732d7d Auto merge of #41476 - abonander:book_proc_macro, r=nrc
Document the `proc_macro` feature in the Unstable Book

Discusses the `proc_macro` feature flag and the features it enables:

* Implicit enable of `extern_use_macros` feature and how to import proc macros
* Error handling in proc macros (using panic messages)
* Function-like proc macros using `#[proc_macro]` and a usage example for creating and invoking
* Attribute-like proc macros using `#[proc_macro_attribute]` and a usage example for creating and invoking

[Rendered](https://github.com/abonander/rust/blob/book_proc_macro/src/doc/unstable-book/src/language-features/proc-macro.md)
2017-05-17 04:21:06 +00:00
bors
d8215fc238 Auto merge of #42049 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 5 pull requests

- Successful merges: #41937, #41957, #42017, #42039, #42046
- Failed merges:
2017-05-17 01:57:45 +00:00
Austin Bonander
e616d12cbb Document the proc_macro feature in the Unstable Book 2017-05-16 17:08:43 -07:00
Mark Simulacrum
c3d22eb0f2 Rollup merge of #42046 - steveklabnik:update-books, r=frewsxcv
Update the various books to latest

This includes a draft of chapter 20 of the book!
2017-05-16 17:31:52 -06:00
Mark Simulacrum
afb9b2013d Rollup merge of #42039 - alexcrichton:update-cargo, r=aturon
Update cargo submodule

This pulls in a fix for #41797 to the master branch, I'll send a separate PR for
the beta branch. Note that the Cargo PR in question to pull in is https://github.com/rust-lang/cargo/pull/4046
2017-05-16 17:31:51 -06:00
Mark Simulacrum
52abafa464 Rollup merge of #42017 - nikomatsakis:issue-41677, r=arielb1
avoid cycles in mir-dump, take 2

This fixes #41697, for real this time, but I'm not sure how best to add a regression test. I was considering maybe adding some flag so that the MIR dumping doesn't actually get written to files (e.g., overloading the directory flag so you can specify nil or something).

cc @dwrensha @oli-obk
2017-05-16 17:31:50 -06:00
Mark Simulacrum
4066c8ec71 Rollup merge of #41957 - llogiq:clippy-libsyntax, r=petrochenkov
Fix some clippy warnings in libsyntax

This is mostly removing stray ampersands, needless returns and lifetimes. Basically a lot of small changes.
2017-05-16 17:31:50 -06:00
Mark Simulacrum
8f61055c52 Rollup merge of #41937 - nikomatsakis:issue-41936-variance-coerce-unsized-cycle, r=eddyb
use equality in the coerce-unsized check

This seems both to be a safe, conservative choice, and it sidesteps the cycle in #41849. Note that, before I converted variance into proper queries, we were using a hybrid of subtyping and equality, due to the presence of a flag that forced invariance if variance had not yet been computed. (Also, Coerce Unsized is unstable.)

Fixes #41936.

r? @eddyb
2017-05-16 17:31:49 -06:00
bors
86319e473e Auto merge of #41907 - est31:macro_unused, r=jseyfried
Add lint for unused macros

Addresses parts of #34938, to add a lint for unused macros.

We now output warnings by default when we encounter a macro that we didn't use for expansion.

Issues to be resolved before this PR is ready for merge:

- [x] fix the NodeId issue described above
- [x] remove all unused macros from rustc and the libraries or set `#[allow(unused_macros)]` next to them if they should be kept for some reason. This is needed for successful boostrap and bors to accept the PR. -> #41934
- [x] ~~implement the full extent of #34938, that means the macro match arm checking as well.~~ *let's not do this for now*
2017-05-16 23:27:36 +00:00
John Kåre Alsaker
1a7375b7e0 Add an option to run rustbuild on low priority
This is a resurrection of #40776, combining their Windows setup with an
additional setup on Unix to set the program group's niceness to +10
(low-but-not-lowest priority) when the `low_priority` option is on.
2017-05-16 16:25:57 -05:00
bors
0f68728fb3 Auto merge of #42038 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 8 pull requests

- Successful merges: #41489, #41982, #41994, #41995, #42001, #42005, #42011, #42028
- Failed merges:
2017-05-16 20:42:52 +00:00
steveklabnik
ff399a098e Update the various books to latest
This includes a draft of chapter 20 of the book!
2017-05-16 16:01:23 -04:00
Diggory Hardy
3f980beb3e loop_break_value: fix tests (but ignore one expected not to compile) 2017-05-16 18:54:41 +01:00
bors
b28cf7564a Auto merge of #41853 - Keruspe:install, r=alexcrichton
rustbuild: add support for --bindir and --sysconfdir

This depends on https://github.com/rust-lang/rust-installer/pull/59 and we'll need to udpate the rust-installer submodule once it gets merged for it to work

Fixes #41644
2017-05-16 17:18:23 +00:00
Michael Woerister
08660afe90 Remove unreachable branches in traits::project 2017-05-16 17:31:18 +02:00
Marc-Antoine Perennou
dda2d756fa rustbuild: fix bash completion installation dir
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2017-05-16 17:22:52 +02:00
Michael Woerister
42051ceb16 Use tcx.type_of(impl) instead of TraitRef::self_ty() for getting Self in relevant_impls_for(). 2017-05-16 17:12:11 +02:00