Commit Graph

59793 Commits

Author SHA1 Message Date
bors
3038f30f96 Auto merge of #38271 - jseyfried:rfc_1560_warning_cycle, r=nrc
resolve: change most backwards incompatible ambiguity errors to `legacy_imports` warnings

Fixes #38176.
r? @nrc or @nikomatsakis
2016-12-20 17:44:15 +00:00
Alex Crichton
57cf2ab31c rustbuild: Deny and fix warnings
Turned out this lint uncovered an actual bug!

Closes #38484
2016-12-20 09:38:57 -08:00
Wang Xuerui
8e38b2de42
rustbuild: package src only once for build triple 2016-12-20 21:43:59 +08:00
Wang Xuerui
46d74eac23
rustbuild: only plan from build triple for dist
We only want to package each host/target once for `dist`. The obvious
solution takes the form of step dependency, which is implemented at
least for the `dist-rustc` step. Unfortunately since the steps are
created from `hosts x targets` during planning and *not* de-duplicated
afterwards, the problem still persists.

We therefore move the check inside `plan()` instead, to avoid creating
the duplicate steps in the first place.
2016-12-20 21:43:58 +08:00
Seo Sanghyeon
73877a0bc8 Find FileCheck using llvm-config 2016-12-20 19:48:14 +09:00
Guillaume Gomez
28e2c6aff9 Update ui test stderr 2016-12-20 11:43:19 +01:00
Guillaume Gomez
f439a24ca2 Fix linter issue 2016-12-20 11:37:15 +01:00
Niko Matsakis
6ea1fbb52b recover from unresolved inference variable at end of autoderef
When we are scanning for suggestions, an unresolved inference variable
is not a hard error.
2016-12-20 11:37:15 +01:00
Niko Matsakis
5d41be3629 don't special case having 1 item 2016-12-20 11:37:15 +01:00
Guillaume Gomez
25a2d13cde Allow multiple suggestions 2016-12-20 11:37:15 +01:00
Niko Matsakis
dac8883a94 fix some broken tests 2016-12-20 11:37:15 +01:00
Niko Matsakis
88e9430dbb call impl_or_trait_item() instead instead of associated_item()
The older method was not aware of the return type possibility.
2016-12-20 11:37:15 +01:00
Guillaume Gomez
044b07dd20 Update to last master 2016-12-20 11:37:15 +01:00
Niko Matsakis
3bb3278e53 revert a lot of the changes to method probe internals 2016-12-20 11:37:15 +01:00
Niko Matsakis
ec5847a698 rewrite return type probing to use the "probe by name" path
We now do two phases. First, we gather up the list of candidates with
suitable return types and extract their names. Then we filter those to
see which are applicable and we return that.

It might be nice to do the "filter by return type" as a second step,
but this is ok for now.
2016-12-20 11:37:15 +01:00
Niko Matsakis
579e52692f make probe_for generic over final operation 2016-12-20 11:37:15 +01:00
Guillaume Gomez
18b33579e1 splitting methods into smaller ones, add docs, better variable naming 2016-12-20 11:37:15 +01:00
Guillaume Gomez
b5686422e1 improve suggestions output and add ui test 2016-12-20 11:37:15 +01:00
Guillaume Gomez
eaa2ddb04f fix tests 2016-12-20 11:37:15 +01:00
Guillaume Gomez
66057a7f72 Fix invalid probe path 2016-12-20 11:37:15 +01:00
Guillaume Gomez
c11fe553df Create check_ref method to allow to check coercion with & types 2016-12-20 11:37:15 +01:00
Guillaume Gomez
b2d0ec0eb4 Fix coercion ICE 2016-12-20 11:37:15 +01:00
Guillaume Gomez
8057d485d4 Move matches return type method 2016-12-20 11:37:15 +01:00
Guillaume Gomez
07a3ede5f2 Return DiagnosticBuilder to add help suggestions 2016-12-20 11:37:15 +01:00
Guillaume Gomez
021d97d1c5 Move suggestion list creation to coerce check 2016-12-20 11:37:15 +01:00
Guillaume Gomez
164f0105bb Add safe_suggestion attribute 2016-12-20 11:37:15 +01:00
Guillaume Gomez
601bbf26a8 Start of implementation of proposal for E0308 2016-12-20 11:37:14 +01:00
Srinivas Reddy Thatiparthy
6414e67dba
run rustfmt on libcollections folder 2016-12-20 09:54:00 +05:30
est31
54f75c9572 Add regression test for #38458 2016-12-20 03:34:36 +01:00
Austin Hicks
e1d8806efd Fix closure debuginfo. 2016-12-19 21:14:27 -05:00
Alex Crichton
f5e7d92129 rustbuild: Update Cargo download location
I updated the beta compiler used to bootstrap the master branch in #38438 with
the intention of fixing Travis OSX linkage issues but I mistakenly forgot that
the PR only updated rustc, not Cargo itself. Cargo has a new release process
with downloads in a different location, so this commit updates rustbuild to
download from this new location by tracking revisions instead of Cargo nightly
dates.
2016-12-19 17:16:13 -08:00
Jeremy Soller
228e495e7f Remove trailing whitespace 2016-12-19 17:42:07 -07:00
Jeremy Soller
0a014c6841 Move prefix to [install] section 2016-12-19 15:49:57 -07:00
Brian Anderson
2dc2f5fafb Bump version to 1.16 2016-12-19 21:57:43 +00:00
Jeffrey Seyfried
f705c69bf6 Simplify TyCtxt::create_and_enter. 2016-12-19 20:57:03 +00:00
Jeffrey Seyfried
39e6ae2dcc Clean up get_traits_containing_item. 2016-12-19 20:57:02 +00:00
Jeffrey Seyfried
8d9ba291f5 Minor bugfix for macro invocation path resolution. 2016-12-19 20:57:02 +00:00
Jeffrey Seyfried
51f25b3cfc resolve: clean up diagnostics for name conflicts. 2016-12-19 20:57:02 +00:00
Jeffrey Seyfried
8e61ff25d8 Optimize ast::PathSegment. 2016-12-19 20:57:00 +00:00
bors
94ae2a2e67 Auto merge of #38072 - nikomatsakis:bootstrap-incremental, r=acrichto
add preliminary support for incremental compilation to rustbuild.py

This implements the integration described in #37929. It requires the use of a local nightly as your bootstrap compiler. The setup is described in `src/bootstrap/README.md`.

This does NOT implement the "copy stage0 libs to stage1" optimization described in #37929, just because that seems orthogonal to me.

In local testing, I do not yet see any incremental re-use when building rustc. I'm not sure why that is, more investigation needed.

(For these reasons, this is not marked as fixing the relevant issue.)

r? @alexcrichton -- I included one random cleanup (`Step::noop()`) that turned out to not be especially relevant. Feel free to tell me you liked it better the old way.
2016-12-19 20:07:49 +00:00
Alex Crichton
cae98cae4f travis: Support local sccache if not on bots
This commit configures local sccache directory to get used if you're running
builds locally to enjoy the benefits of caching when running inside the
containers.
2016-12-19 11:59:44 -08:00
Alex Crichton
488359eba1 travis: Fix the cargotest bot
Recently the Cargo revision running on cargotest was updated in #38051, and the
updated version of Cargo pulls in the openssl-sys 0.9 crate instead of the old
openssl-sys 0.7 crate. The 0.9 release of openssl-sys has slightly different
requirements and logic for detecting OpenSSL, namely it requires `pkg-config` to
be present on Linux typically.

This commit fixes this problem by installing pkg-config in the cargotest
container that's running on the bots. This in turn should hopefully fix the
build script and allow it to find the already-installed local OpenSSL libraries.
2016-12-19 11:40:36 -08:00
Michael Woerister
3a82b0da3d Don't try get local DefId of imported macro in rustdoc. 2016-12-19 14:24:33 -05:00
Niko Matsakis
83453bc673 add and document --incremental flag along with misc other changes
For example:

- we now support `-vv` to get very verbose output.
- RUSTFLAGS is respected by `x.py`
- better error messages for some cases
2016-12-19 11:46:38 -05:00
Niko Matsakis
ef8921add6 add concept of Step::noop() 2016-12-19 11:46:03 -05:00
bors
3f9823d5f5 Auto merge of #38405 - alexcrichton:rustbuild-fixes, r=japaric
rustbuild: Fix `copy` helper with existing files

This erroneously truncated files when the destination already existed and was an
existing hard link to the source. This in turn caused weird bugs!

Closes #37745
2016-12-19 15:36:15 +00:00
bors
10271ea24f Auto merge of #38466 - sanxiyn:rollup, r=sanxiyn
Rollup of 9 pull requests

- Successful merges: #38334, #38397, #38413, #38421, #38422, #38433, #38438, #38445, #38459
- Failed merges:
2016-12-19 12:17:24 +00:00
Seo Sanghyeon
05be48b18b Rollup merge of #38459 - nagisa:rustbuild-exec, r=alexcrichton
Use exec for the wrapper on UNIXes

This not only avoids the small – and unnecessary – constant overhead for each compiler invocation,
but also helps somewhat by only having “correct” rustc processes to look for in `/proc/`.

This also makes the wrapper behave effectively as a regular exec wrapper its intended to be.

I also took liberty to change the fallback error code from `1` to `0xfe` (now only relevant on windows) so that when people complain about “compiler exited with code 254”, its obvious where the issue lies (wrapper losing the exit code somehow).

r? @alexcrichton
2016-12-19 16:59:44 +09:00
Seo Sanghyeon
fda41c6b5c Rollup merge of #38445 - est31:master, r=apasel422
stage0.txt: typo fix
2016-12-19 16:59:44 +09:00
Seo Sanghyeon
9f18f25464 Rollup merge of #38438 - alexcrichton:update-beta, r=brson
Update beta bootstrap compiler

The current beta that rustc is bootstrapping from contains a bug in Cargo that
erroneously links to OpenSSL in /usr/local, but this is fixed in the most recent
1.14 beta, so let's use that.
2016-12-19 16:59:43 +09:00