summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2018-06-12[BETA] Update CargoEric Huss-0/+0
- rust-lang/cargo#5577 - revert rust-lang/cargo#5461 (Support crate renames in `cargo metadata`) - rust-lang/cargo#5567 - Copy `--all-features` request to all workspace members
2018-05-12[BETA] Update CargoEric Huss-0/+0
Regression fixes: - rust-lang/cargo#5510 `cargo rustc` broken for tests in project with bins - rust-lang/cargo#5523 (#50640) shared proc-macro dependency built incorrectly
2018-05-08[beta] Prepare the 1.27.0 beta releaseAlex Crichton-6/+0
This commit prepares the 1.27.0 beta release by doing: * Update the release channel to `beta` * Update Cargo's submodule * Update `stdsimd`'s submodule * Update the bootstrap compiler to the freshly minted 1.26.0 stable release * Don't attempt to verify clippy/miri build
2018-05-07Auto merge of #50000 - michaelwoerister:cross-lang-lto, r=alexcrichtonbors-7/+22
Add some groundwork for cross-language LTO. Implements part of #49879: - Adds a `-Z cross-lang-lto` flag to rustc - Makes sure that bitcode is embedded in object files if the flag is set. This should already allow for using cross language LTO for staticlibs (where one has to invoke the linker manually anyway). However, `rustc` will not try to enable LTO for its own linker invocations yet. r? @alexcrichton
2018-05-07Auto merge of #50434 - nrc:tool-bustage-infra, r=alexcrichtonbors-1/+1
Ping infra team on all tool bustage r? @kennytm cc @rust-lang/core as discussed at today's meeting
2018-05-06Auto merge of #50468 - nrc:test-rustfmt, r=alexcrichtonbors-5/+5
Pass a test directory to rustfmt Another attempt to fix the rustfmt tests. `RUSTFMT_TEST_DIR` is consumed by Rustfmt in the latext commit (thus the Rustfmt update) because we need a place to create temp files that won't be read-only. r? @alexcrichton
2018-05-06Auto merge of #50466 - kennytm:rustbuild-stage0-lib-test, r=Mark-Simulacrumbors-0/+36
rustbuild: Allow quick testing of libstd and libcore at stage0 This PR implemented two features: 1. Added a `--no-doc` flag to allow testing a crate *without* doc tests. In this mode, we don't need to build rustdoc, and thus we can skip building the stage2 compiler. (Ideally stage0 test should use the bootstrap rustdoc, but I don't want to mess up the core builder logic here) 2. Moved all libcore tests externally and added a tidy test to ensure we don't accidentally add `#[test]` into libcore. After this PR, one could run `./x.py test --stage 0 --no-doc src/libstd` to test `libstd` without building the compiler, thus enables us to quickly test new library features.
2018-05-06Pass a test directory to rustfmtNick Cameron-5/+5
2018-05-05Auto merge of #50276 - Zoxc:build-cleanup, r=alexcrichtonbors-2/+39
Misc tweaks This: - ~~Add explicit dependencies on `getops`~~ - Fixes the libtest-json test when `RUST_BACKTRACE=1` is set - ~~Sets `opt-level` to `3`~~ - Removes the use of `staged_api` from `rustc_plugin` - ~~Enables the Windows Error Reporting dialog when running rustc during bootstrapping~~ - Disables Windows Error Reporting dialog when running compiletest tests - Enables backtraces when running rustc during bootstrapping - ~~Removes the `librustc` dependency on `libtest`~~ - Triggers JIT debugging on Windows if rustc panics during bootstrapping r? @alexcrichton
2018-05-05Misc tweaksJohn Kåre Alsaker-2/+39
2018-05-06Added a tidy test to ensure libcore cannot contain any tests.kennytm-0/+36
2018-05-05Auto merge of #50423 - hberntsen:armv5te_unknown_linux_musl, r=alexcrichtonbors-0/+1
Add armv5te-unknown-linux-musl target This PR adds the armv5te-unknown-linux-musl target. The following steps should let you produce a fully statically linked binary now: 1. Running `./src/ci/docker/run.sh dist-armv5te-linux-musl` 2. Changing the run.sh script to start bash instead of the build process and running the container 3. ```sh export USER=root export PATH=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin:/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin:$PATH ``` 4. Configuring Cargo ```yaml [target.armv5te-unknown-linux-musl] linker = "arm-linux-gnueabi-gcc" ``` 5. Building a project ```sh cargo new --bin hello cd hello cargo build --target=armv5te-unknown-linux-musl --release ```
2018-05-04Fold rustfix tests back into the UI test suiteAlex Crichton-62/+44
2018-05-04Use published rustfix 0.2 versionPascal Hertleif-1/+1
2018-05-04test: Make a dedicated testsuite for rustfixAlex Crichton-43/+82
This commit adds a dedicated mode to compiletest for running rustfix tests, adding a new `src/test/rustfix` directory which will execute all tests as a "rustfix" test, namely requiring that a `*.fixed` is next to the main file which is the result of the rustfix project's application of fixes. The `rustfix` crate is pulled in to actually perform the fixing, and the rustfix compiletest mode will assert a few properties about the fixing: * The expected fixed output must be the same as rustc's output suggestions applied to the original code. * The fixed code must compile successfully * The fixed code must have no further diagnostics emitted about it
2018-05-04tidyPascal Hertleif-3/+6
2018-05-04Skip NLL compiletest in rustfix mode for nowPascal Hertleif-3/+6
2018-05-04Use rustfix' suggestion fixing APIPascal Hertleif-74/+6
Uses branch from <https://github.com/rust-lang-nursery/rustfix/pull/63> until we publish a new release.
2018-05-04First step towards rustfix compiletest modePascal Hertleif-2/+90
This is the first small step towards testing auto-fixable compiler suggestions using compiletest. Currently, it only checks if next to a UI test there also happens to a `*.rs.fixed` file, and then uses rustfix (added as external crate) on the original file, and asserts that it produces the fixed version. To show that this works, I've included one such test. I picked this test case at random (and because it was simple) -- It is not relevant to the 2018 edition. Indeed, in the near future, we want to be able to restrict rustfix to edition-lints, so this test cast might go away soon. In case you still think this is somewhat feature-complete, here's a quick list of things currently missing that I want to add before telling people they can use this: - [ ] Make this an actual compiletest mode, with `test [fix] …` output and everything - [ ] Assert that fixed files still compile - [ ] Assert that fixed files produce no (or a known set of) diagnostics output - [ ] Update `update-references.sh` to support rustfix - [ ] Use a published version of rustfix (i.e.: publish a new version rustfix that exposes a useful API for this)
2018-05-04Auto merge of #49870 - ↵bors-0/+2
pnkfelix:issue-27282-immut-borrow-all-pat-ids-in-guards, r=nikomatsakis Immutably and implicitly borrow all pattern ids for their guards (NLL only) This is an important piece of rust-lang/rust#27282. It applies only to NLL mode. It is a change to MIR codegen that is currently toggled on only when NLL is turned on. It thus affect MIR-borrowck but not the earlier static analyses (such as the type checker). This change makes it so that any pattern bindings of type T for a match arm will map to a `&T` within the context of the guard expression for that arm, but will continue to map to a `T` in the context of the arm body. To avoid surfacing this type distinction in the user source code (which would be a severe change to the language and would also require far more revision to the compiler internals), any occurrence of such an identifier in the guard expression will automatically get a deref op applied to it. So an input like: ```rust let place = (1, Foo::new()); match place { (1, foo) if inspect(foo) => feed(foo), ... } ``` will be treated as if it were really something like: ```rust let place = (1, Foo::new()); match place { (1, Foo { .. }) if { let tmp1 = &place.1; inspect(*tmp1) } => { let tmp2 = place.1; feed(tmp2) }, ... } ``` And an input like: ```rust let place = (2, Foo::new()); match place { (2, ref mut foo) if inspect(foo) => feed(foo), ... } ``` will be treated as if it were really something like: ```rust let place = (2, Foo::new()); match place { (2, Foo { .. }) if { let tmp1 = & &mut place.1; inspect(*tmp1) } => { let tmp2 = &mut place.1; feed(tmp2) }, ... } ``` In short, any pattern binding will always look like *some* kind of `&T` within the guard at least in terms of how the MIR-borrowck views it, and this will ensure that guard expressions cannot mutate their the match inputs via such bindings. (It also ensures that guard expressions can at most *copy* values from such bindings; non-Copy things cannot be moved via these pattern bindings in guard expressions, since one cannot move out of a `&T`.)
2018-05-04Add eabi suffix to armv5te musl targetHarm Berntsen-1/+1
2018-05-04Update RLS and Rustfmt (and Cargo)Nick Cameron-5/+5
2018-05-04Ping infra team on all tool bustageNick Cameron-1/+1
2018-05-04Rollup merge of #50417 - matklad:pr-50379, r=alexcrichtonkennytm-0/+0
Update Cargo This should fix RLS cc https://github.com/rust-lang/rust/pull/50379, https://github.com/rust-lang/cargo/pull/5465
2018-05-03Add armv5te-unknown-linux-musl targetHarm Berntsen-0/+1
2018-05-03Update CargoAleksey Kladov-0/+0
2018-05-03Include the test name when reporting that an expected line was not found in ↵Felix S. Klock II-0/+2
a mir-opt test.
2018-05-03Support test header directives in run-make mode too.Michael Woerister-7/+22
2018-05-03Rollup merge of #50302 - GuillaumeGomez:add-query-search-order-check, ↵kennytm-6/+12
r=QuietMisdreavus Add query search order check Fixes #50180. r? @QuietMisdreavus
2018-05-02Update RLS and RustfmtNick Cameron-5/+5
2018-04-30Update Cargo to 2018-04-28 122fd5be5201913d42e219e132d6569493583bcaSimon Sapin-0/+0
2018-04-30Update RustfmtNick Cameron-17/+5
2018-04-28Add query search order checkGuillaume Gomez-6/+12
2018-04-28Update clippy submodulePhilipp Hansch-18/+16
2018-04-27Auto merge of #49891 - cuviper:compiletest-crash, r=alexcrichtonbors-0/+2
compiletest: detect non-ICE compiler panics Fixes #49888, but will be blocked by revealing #49889.
2018-04-26handle license checkNick Cameron-1/+2
2018-04-26Update rustfmt and rlsNick Cameron-5/+17
2018-04-25compiletest: introduce skip-transTatsuyuki Ishi-3/+21
2018-04-24compiletest: detect non-ICE compiler panicsJosh Stone-0/+2
2018-04-24Auto merge of #49933 - oli-obk:miri_rustup, r=eddybbors-18/+18
Fix the miri tool r? @eddyb cc @bjorn3 fixes #49777
2018-04-24Rollup merge of #49812 - ehuss:ui-test-revisions, r=nikomatsakiskennytm-53/+59
Fix revision support for UI tests. Fixes #48878
2018-04-23Fix the miri toolOliver Schneider-18/+18
2018-04-22Update MDBookMatt Ickstadt-1/+1
2018-04-22Auto merge of #50135 - matklad:update-cargo, r=kennytmbors-0/+0
Update Cargo Some noteble changes: * ~~regression fix: https://github.com/rust-lang/cargo/pull/5390~~ * ~~potentially breaking bug-fix: https://github.com/rust-lang/cargo/pull/5389~~ * ~~Cargo now caches the result of `rustc -vV`. It checks `rustc` binary mtime and rustup toolchain settings, so it should probably "just work" with rustbuild.~~ potentially breaking bug-fix: https://github.com/rust-lang/cargo/pull/5390
2018-04-21update testerGuillaume Gomez-0/+2
2018-04-21Update CargoAleksey Kladov-0/+0
Some noteble changes: * regression fix: https://github.com/rust-lang/cargo/pull/5390 * potentially breaking bug-fix: https://github.com/rust-lang/cargo/pull/5389 * Cargo now caches the result of `rustc -vV`. It checks `rustc` binary mtime and rustup toolchain settings, so it should probably "just work" with rustbuild.
2018-04-21Auto merge of #50056 - alexcrichton:update-cargo, r=Mark-Simulacrumbors-0/+0
Update the Cargo submodule
2018-04-20Add doc for output_base_name_stage.Eric Huss-0/+2
2018-04-20Fix revision support for UI tests.Eric Huss-53/+57
Fixes #48878
2018-04-20Update the Cargo submoduleAlex Crichton-0/+0