917 Commits

Author SHA1 Message Date
Simon Sapin
daf84db4d2 Add WebRender to cargotest 2017-10-24 21:41:33 +02:00
Simon Sapin
9d2e83e759 Add Stylo to cargotest 2017-10-24 21:41:33 +02:00
bors
336624735c Auto merge of #44766 - sunjay:lift_generics, r=nikomatsakis
Move Generics from MethodSig to TraitItem and ImplItem

As part of `rust-impl-period/WG-compiler-traits`, we want to "lift" `Generics` from `MethodSig` into `TraitItem` and `ImplItem`. This is in preparation for adding associated type generics. (https://github.com/rust-lang/rust/issues/44265#issuecomment-331172238)

Currently this change is only made in the AST. In the future, it may also impact the HIR. (Still discussing)

To understand this PR, it's probably best to start from the changes to `ast.rs` and then work your way to the other files to understand the far reaching effects of this change.

r? @nikomatsakis
2017-10-24 01:20:09 +00:00
Simon Sapin
5167aac3c4 Extend cargotest to specify packages to test (within a Cargo workspace). 2017-10-23 13:11:12 +02:00
Corey Farwell
c96db06e5b Rollup merge of #45411 - oli-obk:clippy, r=Manishearth
Reactivate clippy in toolstate.toml

The `Cargo.lock` changes are b/c clippy is not its own workspace anymore, but is part of the main workspace

r? @Manishearth
2017-10-21 09:47:23 -04:00
bors
d532ba7c62 Auto merge of #45391 - malbarbo:x32-1, r=alexcrichton
Update libc and some fixes for x86_64-unknown-linux-gnux32
2017-10-21 09:37:11 +00:00
Dustin Speckhals
69ba6738eb Use newest version of RLS and rustfmt 2017-10-20 18:57:06 -04:00
Marco A L Barbosa
e57ee3d0bf Fix some tests for linux gnux32 2017-10-20 13:18:16 -02:00
Oliver Schneider
2812865664
Reactivate clippy in toolstate.toml 2017-10-20 16:01:30 +02:00
bors
4750c1ec04 Auto merge of #45080 - clippered:issue-44986/fix-windows-ui-path, r=estebank
Issue 44986/fix windows ui path

#44968
2017-10-19 21:14:32 +00:00
bors
7a4f39453c Auto merge of #44501 - nikomatsakis:issue-44137-non-query-data-in-tcx, r=eddyb
remove or encapsulate the remaining non-query data in tcx

I wound up removing the existing cache around inhabitedness since it didn't seem to be adding much value. I reworked const rvalue promotion, but not that much (i.e., I did not split the computation into bits, as @eddyb had tossed out as a suggestion). But it's now demand driven, at least.

cc @michaelwoerister -- see the `forbid_reads` change in last commit

r? @eddyb -- since the trickiest of this PR is the work on const rvalue promotion

cc #44137
2017-10-18 10:44:08 +00:00
Sunjay Varma
60bff8ce93 Marking the tools as broken 2017-10-17 22:15:34 -04:00
Niko Matsakis
7715f97279 break clippy 2017-10-17 11:24:52 -04:00
Alex Crichton
5050dadfc6 rustbuild: Allow setting rls/rustfmt to "broken"
This commit enables configuring the RLS/rustfmt tools to the "broken" state and
actually get it past CI. The main changes here were to update all dist-related
code to handle the situation where the RLS isn't available. This in turn
involved a homegrown preprocessor-like-function to edit the configuration files
we pass to the various combined installer tools.
2017-10-16 09:06:51 -07:00
Vadim Petrochenkov
89d9ce4ec3 Don't use target's linker when linking build scripts 2017-10-15 23:23:28 +03:00
Vadim Petrochenkov
9e0fc5ccd0 rustbuild: Support specifying archiver and linker explicitly 2017-10-15 22:10:07 +03:00
bors
8382f39b6b Auto merge of #45299 - kennytm:rollup, r=kennytm
Rollup of 9 pull requests

- Successful merges: #45113, #45250, #45255, #45258, #45263, #45264, #45269, #45280, #45289
- Failed merges:
2017-10-15 08:39:58 +00:00
kennytm
34a286bf90 Rollup merge of #45258 - hdhoang:master, r=alexcrichton
compiletest/runtest: format ErrorKind with Display

The strings are nouns for the most part, so we give ErrorKind::Help a
more sensible string. This reduces quote hiccups in failure output.

unexpected "error": '...'
↓
unexpected error: '...'
2017-10-15 14:21:54 +08:00
bors
6c0d50f9fa Auto merge of #45224 - malbarbo:x32, r=alexcrichton
Add x86_64-unknown-linux-gnux32 target

This adds X32 ABI support for Linux on X86_64. Let's package and dist it so we can star testing libc, libstd, etc.

Fixes https://github.com/rust-lang/rfcs/issues/1339
2017-10-15 06:12:13 +00:00
bors
7778906bee Auto merge of #45177 - oli-obk:clippy, r=alexcrichton
Enable building clippy in CI

r? @alexcrichton

As discussed at Rustfest. Measured additional time is 4 minutes on my machine if no dependencies are shared with other tools. In reality most dependencies are shared (especially the slow to compile ones like serde).

cc @Manishearth

Does not run clippy's test suite, since

a) it is nontrivial in the rustc build system
b) it breaks more frequently but the breakage is negligible

If clippy breaks, the procedure to follow is documented under https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#external-dependencies
2017-10-14 18:48:08 +00:00
bors
7920a7cc74 Auto merge of #45175 - petrochenkov:dyn, r=nikomatsakis
Implement `dyn Trait` syntax (RFC 2113)

cc https://github.com/rust-lang/rust/issues/44662
r? @nikomatsakis
2017-10-14 16:11:05 +00:00
bors
af7de7b677 Auto merge of #45162 - chrisvittal:mir-testing, r=nikomatsakis
Modify MIR testing to require consecutive lines

MIR testing now requires that lines be consecutive. To achive this,
instead of collecting the expected mir as a string, it is now wrapped in
an `ExpectedLine` enum, that is either `Elision` or `Text(T)` where `T:
AsRef<str>`. `Text` lines must be matched in order, unless separated by
`Elision` lines. Elision occurs lazily, that is, an Elision will skip
as few lines as possible.

To add a new elision marker. Put a comment containing only "..." and
whitespace in any MIR testing block. Like so:

```
// fn write_42(_1: *mut i32) -> bool {
//     ...
//     bb0: {
//         Validate(Acquire, [_1: *mut i32]);
//         Validate(Release, [_1: *mut i32]);
//         ...
//         return;
//     }
// }
```

Right now, all input before the line right after `// START` is elided,
and all input after the line right before `// END` is also not tested.

Many tests need to be updated. That will follow in the next commit.

cc #45153
r? @nikomatsakis
2017-10-14 11:22:46 +00:00
Vadim Petrochenkov
9d373204a5 Update rustfmt submodule 2017-10-14 12:53:44 +03:00
bors
305e02281b Auto merge of #45063 - michaelwoerister:bring-back-incremental-info, r=nikomatsakis
incr.comp.: Bring back output of -Zincremental-info.

This got kind lost during the transition to red/green.

I also switched back from `eprintln!()` to `println!()` since the former never actually produced any output. I suspect this has to do with `libterm` somehow monopolizing `stderr`.

r? @nikomatsakis
2017-10-13 15:04:12 +00:00
Hoàng Đức Hiếu
45502d23fb compiletest/runtest: format ErrorKind with Display
The strings are nouns for the most part, so we give ErrorKind::Help a
more sensible string. This reduces quote hiccups in failure output.

unexpected "error": '...'
↓
unexpected error: '...'
2017-10-13 17:54:43 +07:00
tinaun
46cd410381 remove duplicate stubs 2017-10-13 02:09:22 -04:00
Marco A L Barbosa
0f427036c7 Add builder for x86_64-unknown-linux-gnux32 in cross2 2017-10-11 21:36:37 -03:00
Dustin Speckhals
218103ef5a Update rustfmt along with rls 2017-10-11 12:00:29 -04:00
clippered
057bc7d650 Fix #44968 Windows path in UI tests 2017-10-11 23:25:39 +11:00
Oliver Schneider
c6c47fa6c0 Update toolstate.toml 2017-10-10 18:16:18 +02:00
Oliver Schneider
8e900aaa2b Enable building clippy in CI 2017-10-10 17:20:59 +02:00
bors
5f578dfad0 Auto merge of #45141 - kennytm:rollup, r=kennytm
Rollup of 9 pull requests

- Successful merges: #44962, #45051, #45091, #45106, #45117, #45118, #45120, #45125, #45136
- Failed merges:
2017-10-10 08:30:10 +00:00
Christopher Vittal
a5e8a0ea7c Modify MIR testing to require continuous lines
Mir testing now requires that lines be continuous. To achive this,
instead of collecting the expected mir as a string, it is now wrapped in
an `ExpectedLine` enum, that is either `Elision` or `Text(T)` where `T:
AsRef<str>`. `Text` lines must be matched in order, unless separated by
`Elision` lines. Matches occur greedily, that is, an Elision will skip
as few lines as possible.

To add a new elision marker. Put a comment containing only "..." and
whitespace in any MIR testing block. Like so:

```
// fn write_42(_1: *mut i32) -> bool {
//     ...
//     bb0: {
//         Validate(Acquire, [_1: *mut i32]);
//         Validate(Release, [_1: *mut i32]);
//         ...
//         return;
//     }
// }
```

Right now, all input before the line right after `// START` is elided,
and all input after the line right before `// END` is also not tested.

Many tests need to be updated. That will follow in the next commit.

cc #45153
2017-10-09 23:22:28 -04:00
bors
13ae187043 Auto merge of #44822 - frewsxcv:frewsxcv-eprintln, r=Kimundi
Migrate to eprint/eprintln macros where appropriate.

None
2017-10-10 02:54:14 +00:00
kennytm
9e6b565c61
Rollup merge of #45051 - k0pernicus:master, r=michaelwoerister
Debugger pretty printer files are take into account in test execution time-stamping

This PR is proposed to solve the issue #45022.
2017-10-10 00:27:17 +08:00
k0pernicus
53a648522b New rebase for the issue #45022
Add pretty printer files into test execution time-stamping

Move find_rust_src_path() as a method for Config

Move find_rust_src_path() as a method for Config

Call find_rust_src_path() from Config

Move find_rust_src_path() from common.rs to header.rs

Add pretty printer files as relevant files to get up_to_date information

Remove dead code

Add two pretty printer files to keep a close watch on

Move find_rust_src_path() as a method for Config

Move find_rust_src_path() as a method for Config

Call find_rust_src_path() from Config

Move find_rust_src_path() from common.rs to header.rs

Remove dead code

Add two pretty printer files to keep a close watch on
2017-10-09 13:06:51 +02:00
Dustin Speckhals
dcb915e774 Update rls submodule 2017-10-07 16:54:00 -04:00
Michael Woerister
b81c8580ca incr.comp.: Bring back output of -Zincremental-info. 2017-10-06 16:04:38 +02:00
bgermann
80fe86f8c7 Add build environment for Solaris
This can be used to build rust-std.

The dilos illumos distribution was chosen, because illumos is free software
as opposed to Oracle Solaris and dilos is the only illumos distribution that
supports x86_64 and sparcv9 at the same level.
2017-10-03 14:48:39 +02:00
steveklabnik
1bbf41da6f update mdbook
Fixes #44704
2017-10-02 10:16:32 -04:00
Mark Simulacrum
f91c55e995 Rollup merge of #44287 - Eh2406:master, r=aturon
Allow T op= &T for built-in numeric types T v2

Manually rebase of @Migi https://github.com/rust-lang/rust/pull/41336
2017-09-29 17:58:52 -06:00
Oliver Schneider
ea35192d7c
Adjust imports to librustc::mir::interpret 2017-09-29 12:54:39 +02:00
bors
688a858391 Auto merge of #44785 - alexcrichton:update-cargo, r=nikomatsakis
Update some minor dependencies

* run `cargo update`
* Update cargo submodule
* Update to the `cc` crate from `gcc`
2017-09-28 16:19:58 +00:00
Corey Farwell
8ef5447815 Migrate to eprint/eprintln macros where appropriate. 2017-09-28 11:38:35 -04:00
bors
9cb90f4e23 Auto merge of #44779 - tjkirch:master, r=alexcrichton
Add aarch64-unknown-linux-musl target

This adds support for the aarch64-unknown-linux-musl target in the build and CI systems.

This addresses half of issue #42520.

The new file `aarch64_unknown_linux_musl.rs` is a copy of `aarch64_unknown_linux_gnu.rs` with "gnu" replaced by "musl", and the added logic in `build-arm-musl.sh` is similarly a near-copy of the arches around it, so overall the changes were straightforward.

Testing:

```
$ sudo ./src/ci/docker/run.sh cross
...
Dist std stage2 (x86_64-unknown-linux-gnu -> aarch64-unknown-linux-musl)
Building stage2 test artifacts (x86_64-unknown-linux-gnu -> aarch64-unknown-linux-musl)
   Compiling getopts v0.2.14
   Compiling term v0.0.0 (file:///checkout/src/libterm)
   Compiling test v0.0.0 (file:///checkout/src/libtest)
    Finished release [optimized] target(s) in 16.91 secs
Copying stage2 test from stage2 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / aarch64-unknown-linux-musl)
...
Build completed successfully in 0:55:22
```

```
$ rustup toolchain link local obj/build/x86_64-unknown-linux-gnu/stage2
$ rustup default local
```

After setting the local toolchain as default, and adding this in ~/.cargo/config:

```
[target.aarch64-unknown-linux-musl]
linker = "aarch64-linux-musl-gcc"
```

...then the toolchain was able to build a working ripgrep as a test:

```
$ readelf -a target/aarch64-unknown-linux-musl/debug/rg | grep -i interpreter
$ readelf -a target/aarch64-unknown-linux-musl/debug/rg | grep NEEDED
$ file target/aarch64-unknown-linux-musl/debug/rg
target/aarch64-unknown-linux-musl/debug/rg: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), statically linked, BuildID[sha1]=be11036b0988fac5dccc9f6487eb780b05186582, not stripped
```
2017-09-28 03:28:20 +00:00
Alex Crichton
9b91b877ad Update the Cargo submodule 2017-09-27 15:40:57 -07:00
Nick Cameron
71a0be0792 Update the RLS again 2017-09-27 15:40:57 -07:00
Nick Cameron
bfcb290937 Add RLS and Rustfmt to the toolstate mechanism 2017-09-27 15:40:57 -07:00
Nick Cameron
c0ea270f70 Rename rls component to rls-preview on nightly 2017-09-27 15:40:57 -07:00
Nick Cameron
c5cad5a78d Update RLS and Rustfmt 2017-09-27 15:40:57 -07:00