Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 8 pull requests #41383

Closed
wants to merge 28 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
99f5c85
rustc: ban registering obligations during InferCtxt snapshots.
eddyb Apr 15, 2017
e56b119
rustc_typeck: keep register_infer_ok_obligations calls out of snapshots.
eddyb Apr 15, 2017
2ad1964
rustc_typeck: Autoderef::finalize is always called with one &hir::Expr.
eddyb Apr 15, 2017
516570f
rustc_typeck: move some obligation methods to Inherited.
eddyb Apr 15, 2017
3725cab
rustc_typeck: return InferOk from lookup_method_in_trait_adjusted.
eddyb Apr 15, 2017
1afe77f
Cleaned up throughout std::path's docs
Apr 15, 2017
cd64ff9
rustc_typeck: fix binops needing more type informations to coerce.
eddyb Apr 16, 2017
8c21b60
Expand and add examples to std::path::{Prefix, PrefixComponent}'s docs
Apr 16, 2017
51ca5fe
Restructure and redistribute std::path's module docs
Apr 17, 2017
32132d9
Expand std::path::Display's docs
Apr 17, 2017
d6f7577
Fix typos in std::path's docs
Apr 18, 2017
2c9d756
Run tests for the cargo submodule in tree
alexcrichton Apr 18, 2017
43d92bb
update mdbook
steveklabnik Apr 18, 2017
0a69bf4
Bump stage0 to fix ARM LLVM
cuviper Apr 18, 2017
6383de1
fixes #40013
Apr 11, 2017
8b45a21
comment out removed error codes
Apr 18, 2017
3092ac4
change note for patterns
Apr 18, 2017
cba0c6a
rustc_trans: do not treat byval as using up registers.
eddyb Apr 18, 2017
19da9bb
Add top level sections to the Unstable Book.
frewsxcv Apr 13, 2017
19851f4
Bump book and reference.
frewsxcv Apr 17, 2017
b9f5f91
Rollup merge of #41236 - cengizIO:master, r=nikomatsakis
frewsxcv Apr 18, 2017
0f38011
Rollup merge of #41295 - frewsxcv:frewsxcxv-unstability, r=steveklabnik
frewsxcv Apr 18, 2017
4882a74
Rollup merge of #41325 - eddyb:isolate-snapshots-for-good, r=arielb1
frewsxcv Apr 18, 2017
b739b56
Rollup merge of #41348 - lukaramu:std-path-docs, r=frewsxcv
frewsxcv Apr 18, 2017
c1634ba
Rollup merge of #41362 - alexcrichton:run-cargot-ests, r=aturon
frewsxcv Apr 18, 2017
1093d5e
Rollup merge of #41369 - cuviper:arm-stage0, r=alexcrichton
frewsxcv Apr 18, 2017
a919245
Rollup merge of #41374 - steveklabnik:update-mdbook, r=frewsxcv
frewsxcv Apr 18, 2017
933cf2c
Rollup merge of #41378 - eddyb:byval-is-not-like-sret, r=arielb1
frewsxcv Apr 18, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions src/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

50 changes: 40 additions & 10 deletions src/bootstrap/check.rs
Original file line number Diff line number Diff line change
Expand Up @@ -78,14 +78,6 @@ pub fn linkcheck(build: &Build, host: &str) {
pub fn cargotest(build: &Build, stage: u32, host: &str) {
let ref compiler = Compiler::new(stage, host);

// Configure PATH to find the right rustc. NB. we have to use PATH
// and not RUSTC because the Cargo test suite has tests that will
// fail if rustc is not spelled `rustc`.
let path = build.sysroot(compiler).join("bin");
let old_path = ::std::env::var("PATH").expect("");
let sep = if cfg!(windows) { ";" } else {":" };
let ref newpath = format!("{}{}{}", path.display(), sep, old_path);

// Note that this is a short, cryptic, and not scoped directory name. This
// is currently to minimize the length of path on Windows where we otherwise
// quickly run into path name limit constraints.
Expand All @@ -95,11 +87,49 @@ pub fn cargotest(build: &Build, stage: u32, host: &str) {
let _time = util::timeit();
let mut cmd = Command::new(build.tool(&Compiler::new(0, host), "cargotest"));
build.prepare_tool_cmd(compiler, &mut cmd);
build.run(cmd.env("PATH", newpath)
.arg(&build.cargo)
build.run(cmd.arg(&build.cargo)
.arg(&out_dir));
}

/// Runs `cargo test` for `cargo` packaged with Rust.
pub fn cargo(build: &Build, stage: u32, host: &str) {
let ref compiler = Compiler::new(stage, host);

// Configure PATH to find the right rustc. NB. we have to use PATH
// and not RUSTC because the Cargo test suite has tests that will
// fail if rustc is not spelled `rustc`.
let path = build.sysroot(compiler).join("bin");
let old_path = ::std::env::var("PATH").expect("");
let sep = if cfg!(windows) { ";" } else {":" };
let ref newpath = format!("{}{}{}", path.display(), sep, old_path);

let mut cargo = build.cargo(compiler, Mode::Tool, host, "test");
cargo.arg("--manifest-path").arg(build.src.join("cargo/Cargo.toml"));

// Don't build tests dynamically, just a pain to work with
cargo.env("RUSTC_NO_PREFER_DYNAMIC", "1");

// Don't run cross-compile tests, we may not have cross-compiled libstd libs
// available.
cargo.env("CFG_DISABLE_CROSS_TESTS", "1");

// When being tested Cargo will at some point call `nmake.exe` on Windows
// MSVC. Unfortunately `nmake` will read these two environment variables
// below and try to intepret them. We're likely being run, however, from
// MSYS `make` which uses the same variables.
//
// As a result, to prevent confusion and errors, we remove these variables
// from our environment to prevent passing MSYS make flags to nmake, causing
// it to blow up.
if cfg!(target_env = "msvc") {
cargo.env_remove("MAKE");
cargo.env_remove("MAKEFLAGS");
}


build.run(cargo.env("PATH", newpath));
}

/// Runs the `tidy` tool as compiled in `stage` by the `host` compiler.
///
/// This tool in `src/tools` checks up on various bits and pieces of style and
Expand Down
1 change: 1 addition & 0 deletions src/bootstrap/mk/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ check:
check-aux:
$(Q)$(BOOTSTRAP) test \
src/tools/cargotest \
cargo \
src/test/pretty \
src/test/run-pass/pretty \
src/test/run-fail/pretty \
Expand Down
4 changes: 4 additions & 0 deletions src/bootstrap/step.rs
Original file line number Diff line number Diff line change
Expand Up @@ -468,6 +468,10 @@ pub fn build_rules<'a>(build: &'a Build) -> Rules {
.dep(|s| s.name("librustc"))
.host(true)
.run(move |s| check::cargotest(build, s.stage, s.target));
rules.test("check-cargo", "cargo")
.dep(|s| s.name("tool-cargo"))
.host(true)
.run(move |s| check::cargo(build, s.stage, s.target));
rules.test("check-tidy", "src/tools/tidy")
.dep(|s| s.name("tool-tidy").stage(0))
.default(true)
Expand Down
2 changes: 1 addition & 1 deletion src/doc/guide-plugins.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
% The (old) Rust Compiler Plugins Guide

This content has moved into
[the Unstable Book](unstable-book/plugin.html).
[the Unstable Book](unstable-book/language-features/plugin.html).
2 changes: 1 addition & 1 deletion src/doc/reference
Loading