]> git.lizzy.rs Git - rust.git/log
rust.git
6 years agoAdd test for #33185
Matt Ickstadt [Sat, 2 Sep 2017 18:01:34 +0000 (13:01 -0500)]
Add test for #33185
Closes #33185

6 years agoAdd test for #35676
Matt Ickstadt [Sat, 2 Sep 2017 17:38:25 +0000 (12:38 -0500)]
Add test for #35676
Closes #35676

6 years agoAuto merge of #43886 - oli-obk:clippy, r=nrc
bors [Sat, 2 Sep 2017 17:17:14 +0000 (17:17 +0000)]
Auto merge of #43886 - oli-obk:clippy, r=nrc

Add clippy as a submodule

~~This builds clippy as part of `./x.py build` (locally and in CI).~~

This allows building clippy with `./x.py build src/tools/clippy`

~~Needs https://github.com/nrc/dev-tools-team/issues/18#issuecomment-322456461 to be resolved before it can be merged.~~ Contributers can simply open a PR to clippy and point the submodule at the `pull/$pr_number/head` branch.

This does **not** build clippy or test the clippy test suite at all as per https://github.com/nrc/dev-tools-team/issues/18#issuecomment-321411418

r? @nrc

cc @Manishearth @llogiq @mcarton @alexcrichton

6 years agoadd test for not optimized `pow` with constant power
Evgeniy A. Dushistov [Sat, 2 Sep 2017 16:10:00 +0000 (19:10 +0300)]
add test for not optimized `pow` with constant power

Closes #34947

6 years agoRemove invalid doctest from bootstrap.py.
kennytm [Sat, 2 Sep 2017 11:59:53 +0000 (19:59 +0800)]
Remove invalid doctest from bootstrap.py.

Make sure that if the test is failed, the CI will stop the build.

6 years agoAuto merge of #44259 - Mark-Simulacrum:update-cargo, r=alexcrichton
bors [Sat, 2 Sep 2017 13:43:53 +0000 (13:43 +0000)]
Auto merge of #44259 - Mark-Simulacrum:update-cargo, r=alexcrichton

Update cargo

This includes https://github.com/rust-lang/cargo/pull/4447 which fixes a bug in Cargo that is needed to fix https://github.com/rust-lang/rust/issues/44237.

r? @alexcrichton

6 years agoMinor compilation fix
Kornel [Sat, 2 Sep 2017 11:14:30 +0000 (12:14 +0100)]
Minor compilation fix

6 years agoAuto merge of #44256 - GuillaumeGomez:update-html-diff-rs, r=Mark-Simulacrum
bors [Sat, 2 Sep 2017 11:07:49 +0000 (11:07 +0000)]
Auto merge of #44256 - GuillaumeGomez:update-html-diff-rs, r=Mark-Simulacrum

Update html-diff-rs version

r? @nrc

6 years agoAuto merge of #44104 - llogiq:lowercase-lints, r=nikomatsakis
bors [Sat, 2 Sep 2017 08:38:12 +0000 (08:38 +0000)]
Auto merge of #44104 - llogiq:lowercase-lints, r=nikomatsakis

add a lowercase suggestion to unknown_lints

I recently wrote some tests for a clippy lint, copied the (uppercase) lint name into my test file and forgot to toggle the case. This PR adds a suggestion that would have saved me 10 minutes of debugging, so it's likely a net win ðŸ™‚ . Also it adds a UI test for the `unknown_lints` lint.

6 years agostabilize mem::discriminant (closes #24263)
Alex Burka [Sat, 2 Sep 2017 05:59:54 +0000 (01:59 -0400)]
stabilize mem::discriminant (closes #24263)

6 years agorustc: Flag {i,u}128 as unsafe for FFI
Alex Crichton [Sat, 2 Sep 2017 04:34:51 +0000 (21:34 -0700)]
rustc: Flag {i,u}128 as unsafe for FFI

These don't appear to have a stable ABI as noted in #41799 and the work in
compiler-builtins definitely seems to be confirming it!

6 years agoUpdate cargo.
Mark Simulacrum [Sat, 2 Sep 2017 03:15:47 +0000 (21:15 -0600)]
Update cargo.

This includes https://github.com/rust-lang/cargo/pull/4447 which fixes
a bug in Cargo that is needed to fix
https://github.com/rust-lang/rust/issues/44237.

6 years agox86: return single-float aggregates in a float register
Josh Stone [Fri, 1 Sep 2017 23:05:19 +0000 (16:05 -0700)]
x86: return single-float aggregates in a float register

Following Clang's lead, and anecdotal evidence from the `float_one` part
of `run-make/extern-fn-struct-passing-abi`, use a floating point
register to return single-float aggregates, except on MSVC targets.

6 years agoExclude all windows-gnu from the float_one test
Josh Stone [Wed, 30 Aug 2017 19:26:01 +0000 (12:26 -0700)]
Exclude all windows-gnu from the float_one test

6 years agoExclude x86_64-pc-windows-gnu from the float_one test
Josh Stone [Tue, 29 Aug 2017 21:48:59 +0000 (14:48 -0700)]
Exclude x86_64-pc-windows-gnu from the float_one test

6 years agopowerpc64: improve extern struct ABI
Josh Stone [Wed, 23 Aug 2017 21:38:45 +0000 (17:38 -0400)]
powerpc64: improve extern struct ABI

These fixes all have to do with the 64-bit PowerPC ELF ABI for big-endian
targets.  The ELF v2 ABI for powerpc64le already worked well.

- Return after marking return aggregates indirect. Fixes #42757.
- Pass one-member float aggregates as direct argument values.
- Aggregate arguments less than 64-bit must be written in the least-
  significant bits of the parameter space.
- Larger aggregates are instead padded at the tail.
  (i.e. filling MSBs, padding the remaining LSBs.)

New tests were also added for the single-float aggregate, and a 3-byte
aggregate to check that it's filled into LSBs.  Overall, at least these
formerly-failing tests now pass on powerpc64:

- run-make/extern-fn-struct-passing-abi
- run-make/extern-fn-with-packed-struct
- run-pass/extern-pass-TwoU16s.rs
- run-pass/extern-pass-TwoU8s.rs
- run-pass/struct-return.rs

6 years agorustc_mir: always emit StorageLive even without a matching StorageDead.
Eduard-Mihai Burtescu [Fri, 1 Sep 2017 19:53:54 +0000 (22:53 +0300)]
rustc_mir: always emit StorageLive even without a matching StorageDead.

6 years agorustc_mir: actually "promote" constants' MIR to 'static by removing StorageDead's.
Eduard-Mihai Burtescu [Fri, 1 Sep 2017 19:04:09 +0000 (22:04 +0300)]
rustc_mir: actually "promote" constants' MIR to 'static by removing StorageDead's.

6 years agoUpdate html-diff-rs version
Guillaume Gomez [Fri, 1 Sep 2017 22:16:55 +0000 (00:16 +0200)]
Update html-diff-rs version

6 years agoFix unstable book example
Matt Ickstadt [Fri, 1 Sep 2017 21:16:36 +0000 (16:16 -0500)]
Fix unstable book example

6 years agorustc: rename CodeExtent to Scope and RegionMaps to ScopeTree.
Eduard-Mihai Burtescu [Thu, 31 Aug 2017 18:37:38 +0000 (21:37 +0300)]
rustc: rename CodeExtent to Scope and RegionMaps to ScopeTree.

6 years agoFix arm visitor
Matt Ickstadt [Fri, 1 Sep 2017 19:39:46 +0000 (14:39 -0500)]
Fix arm visitor

6 years agoImplement RFC 1925
Matt Ickstadt [Sat, 26 Aug 2017 22:09:31 +0000 (17:09 -0500)]
Implement RFC 1925

6 years agoAuto merge of #44154 - alexcrichton:bump-bootstrap, r=Mark-Simulacrum
bors [Fri, 1 Sep 2017 16:39:31 +0000 (16:39 +0000)]
Auto merge of #44154 - alexcrichton:bump-bootstrap, r=Mark-Simulacrum

Bump to 1.22.0 and update boostrap compiler

Time to get a new nightly!

6 years agoUpdate git2-rs to fix cross compiles
Alex Crichton [Fri, 1 Sep 2017 14:56:44 +0000 (07:56 -0700)]
Update git2-rs to fix cross compiles

6 years agoAuto merge of #44238 - nrc:pulldown-warn, r=@QuietMisdreavus
bors [Fri, 1 Sep 2017 13:56:22 +0000 (13:56 +0000)]
Auto merge of #44238 - nrc:pulldown-warn, r=@QuietMisdreavus

Improve the Pulldown/hoedown warnings

cc #44229

r? @QuietMisdreavus

6 years agoAuto merge of #44171 - eddyb:scope, r=nikomatsakis
bors [Fri, 1 Sep 2017 10:40:18 +0000 (10:40 +0000)]
Auto merge of #44171 - eddyb:scope, r=nikomatsakis

Use hir::ItemLocalId instead of ast::NodeId in rustc::middle::region::CodeExtent.

This is an alternative to @michaelwoerister's #43887, changing `CodeExtent` instead of `ReScope`.

The benefit here is that the same `Region`s are used same-crate and cross-crate, while preserving the incremental recompilation properties of the stable `hir::ItemLocalId`.

Only places which needed to get back to the `ast::NodeId` from `CodeExtent` was its `span` method, used in error reporting - passing the `&RegionMaps` down allowed using `hir_to_node_id`.
`rustc::cfg` and `dataflow` also had to be converted to `hir::ItemLocalId` because of their interactions with `CodeExtent`, especially in `borrowck`, and from that we have 3 more `hir_to_node_id` calls: `cfg::graphviz` node labels, `borrowck` move reporting, and the `unconditional_recursion` lint.

Out of all of those, *only* the lint actually makes a decision (on whether code will compile) based on the result of the conversion, the others only use it to know how to print information to the user.
So I think we're safe to say that the bulk of the code working with a `CodeExtent` is fine with local IDs.

r? @nikomatsakis

6 years agorustc: use hir::ItemLocalId instead of ast::NodeId in CodeExtent.
Eduard-Mihai Burtescu [Tue, 29 Aug 2017 16:24:49 +0000 (19:24 +0300)]
rustc: use hir::ItemLocalId instead of ast::NodeId in CodeExtent.

6 years agorustc: take TyCtxt and RegionMaps in CodeMap::span.
Eduard-Mihai Burtescu [Tue, 29 Aug 2017 23:39:06 +0000 (02:39 +0300)]
rustc: take TyCtxt and RegionMaps in CodeMap::span.

6 years agorustc: use hir::ItemLocalId instead of ast::NodeId in CFG.
Eduard-Mihai Burtescu [Tue, 29 Aug 2017 16:27:30 +0000 (19:27 +0300)]
rustc: use hir::ItemLocalId instead of ast::NodeId in CFG.

6 years agoFix tests
Nick Cameron [Fri, 1 Sep 2017 06:15:10 +0000 (18:15 +1200)]
Fix tests

This is just undoing changes from #41991 because we are not running markdown rendering twice.

6 years agoAdd git-commit-hash in source and extended tarballs too.
Simon Sapin [Fri, 1 Sep 2017 07:08:59 +0000 (09:08 +0200)]
Add git-commit-hash in source and extended tarballs too.

6 years agoFix documentation and formatting.
Jacob Kiesel [Fri, 1 Sep 2017 06:07:26 +0000 (00:07 -0600)]
Fix documentation and formatting.

6 years agoAuto merge of #44233 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
bors [Fri, 1 Sep 2017 04:50:00 +0000 (04:50 +0000)]
Auto merge of #44233 - Mark-Simulacrum:rollup, r=Mark-Simulacrum

Rollup of 10 pull requests

- Successful merges: #44192, #44199, #44202, #44203, #44205, #44207, #44209, #44223, #44230, #44231
- Failed merges:

6 years agoWindows line endings
Nick Cameron [Fri, 1 Sep 2017 04:15:25 +0000 (16:15 +1200)]
Windows line endings

6 years agoDo a better job of eliding whitespace-only differences from warnings
Nick Cameron [Fri, 1 Sep 2017 03:34:44 +0000 (15:34 +1200)]
Do a better job of eliding whitespace-only differences from warnings

6 years agoImprove the appearance of markdown warnings
Nick Cameron [Fri, 1 Sep 2017 01:37:26 +0000 (13:37 +1200)]
Improve the appearance of markdown warnings

6 years agoBring back stage0 allocator logic on MSVC
Alex Crichton [Thu, 31 Aug 2017 14:07:54 +0000 (07:07 -0700)]
Bring back stage0 allocator logic on MSVC

I think there may still be bugs preventing its removal..

6 years agorustdoc: collect rendering warnings and print them in one place
Nick Cameron [Fri, 1 Sep 2017 00:24:26 +0000 (12:24 +1200)]
rustdoc: collect rendering warnings and print them in one place

6 years agoRollup merge of #44231 - lukaramu:patch-1, r=alexcrichton
Mark Simulacrum [Fri, 1 Sep 2017 00:07:49 +0000 (18:07 -0600)]
Rollup merge of #44231 - lukaramu:patch-1, r=alexcrichton

Fix release notes on associated constants

Associated constants seem to be stable everywhere, not just in traits

6 years agoRollup merge of #44230 - Phlosioneer:patch-1, r=sfackler
Mark Simulacrum [Fri, 1 Sep 2017 00:07:48 +0000 (18:07 -0600)]
Rollup merge of #44230 - Phlosioneer:patch-1, r=sfackler

Fix typo in 1.20.0 release notes

str::from_boxed_utf8_unchecked rather than ste::

6 years agoRollup merge of #44223 - eddyb:symbol-from-str, r=jseyfried
Mark Simulacrum [Fri, 1 Sep 2017 00:07:47 +0000 (18:07 -0600)]
Rollup merge of #44223 - eddyb:symbol-from-str, r=jseyfried

Implement From<&str> for Symbol.

This lets us have `fn foo<S: Into<Symbol>>` bounds and accept both `&str` and existing `Symbol`s.

r? @jseyfried

6 years agoRollup merge of #44209 - frewsxcv:frewsxcv-addr-other-scenarios, r=alexcrichton
Mark Simulacrum [Fri, 1 Sep 2017 00:07:46 +0000 (18:07 -0600)]
Rollup merge of #44209 - frewsxcv:frewsxcv-addr-other-scenarios, r=alexcrichton

Expand docs of multi-address behavior of some UDP/TCP APIs.

Fixes https://github.com/rust-lang/rust/issues/22569.

6 years agoRollup merge of #44207 - durka:define-maps-fn, r=eddyb
Mark Simulacrum [Fri, 1 Sep 2017 00:07:45 +0000 (18:07 -0600)]
Rollup merge of #44207 - durka:define-maps-fn, r=eddyb

add `fn` to syntax of rustc::ty::maps::define_maps

This is not a functional change, it just makes it possible to find a query by grepping without knowing that it's a query rather than a function.

I didn't pursue renaming everything from "map" to "query" because it seems to be a very invasive change. It would be a good test to exercise an IDE's renaming features.

Closes #44161

r? @eddyb

6 years agoRollup merge of #44205 - frewsxcv:frewsxcv-addr-doc-fix, r=QuietMisdreavus
Mark Simulacrum [Fri, 1 Sep 2017 00:07:44 +0000 (18:07 -0600)]
Rollup merge of #44205 - frewsxcv:frewsxcv-addr-doc-fix, r=QuietMisdreavus

Fix typo in doc `ToSocketAddrs` example.

None

6 years agoRollup merge of #44203 - cuviper:compiler-rt-test, r=Mark-Simulacrum
Mark Simulacrum [Fri, 1 Sep 2017 00:07:43 +0000 (18:07 -0600)]
Rollup merge of #44203 - cuviper:compiler-rt-test, r=Mark-Simulacrum

rustbuild: update the rust-src filter for compiler-rt

We wanted `src/compiler-rt/test` filtered from the `rust-src` package,
but that path is now `src/libcompiler_builtins/compiler-rt/test`.  This
saves over half of the installed rust-src size. (50MB -> 22MB)

6 years agoRollup merge of #44202 - alexcrichton:xcrate-generators, r=arielb1
Mark Simulacrum [Fri, 1 Sep 2017 00:07:42 +0000 (18:07 -0600)]
Rollup merge of #44202 - alexcrichton:xcrate-generators, r=arielb1

rustc: Fix reachability with cross-crate generators

Same solution as in f2df1857

Closes #44181

6 years agoRollup merge of #44199 - jakllsch:jakllsch-abcc6c4a-0caf-4d30-b336-39629c73d3f5,...
Mark Simulacrum [Fri, 1 Sep 2017 00:07:41 +0000 (18:07 -0600)]
Rollup merge of #44199 - jakllsch:jakllsch-abcc6c4a-0caf-4d30-b336-39629c73d3f5, r=sfackler

bootstrap: add openssl configuration mapping for i686-unknown-netbsd

6 years agoRollup merge of #44192 - GuillaumeGomez:sub-fields-style, r=QuietMisdreavus
Mark Simulacrum [Fri, 1 Sep 2017 00:07:40 +0000 (18:07 -0600)]
Rollup merge of #44192 - GuillaumeGomez:sub-fields-style, r=QuietMisdreavus

Fix invalid display of enum sub-fields docs

Before:

<img width="1440" alt="screen shot 2017-08-30 at 23 17 00" src="https://user-images.githubusercontent.com/3050060/29895433-61f2bf8c-8dd9-11e7-83e8-cf1dca878100.png">

After:

<img width="1440" alt="screen shot 2017-08-30 at 23 16 48" src="https://user-images.githubusercontent.com/3050060/29895441-66dea042-8dd9-11e7-9576-11b0c770c70b.png">

cc @nox @rust-lang/docs

6 years agoAdd support for Vector Multiply Sum Saturated on PowerPC
Luca Barbato [Fri, 4 Aug 2017 00:19:58 +0000 (00:19 +0000)]
Add support for Vector Multiply Sum Saturated on PowerPC

6 years agoAdd support for Vector Multiply Sum on PowerPC
Luca Barbato [Fri, 4 Aug 2017 00:19:58 +0000 (00:19 +0000)]
Add support for Vector Multiply Sum on PowerPC

6 years agoAuto merge of #43425 - matklad:lambda-restrictions, r=eddyb
bors [Thu, 31 Aug 2017 23:26:47 +0000 (23:26 +0000)]
Auto merge of #43425 - matklad:lambda-restrictions, r=eddyb

Lambda expressions honor no struct literal restriction

This is a fix for #43412 if we decide that it is indeed a bug :)

closes #43412

6 years agoOnly emit warnings if the user is using Pulldown
Nick Cameron [Thu, 31 Aug 2017 23:22:18 +0000 (11:22 +1200)]
Only emit warnings if the user is using Pulldown

Also checks for differences after eliminating whitespace-only diffs.

Renames get_html_diff

6 years agoAdd support for Vector Multiply Add Saturated on PowerPC
Luca Barbato [Fri, 4 Aug 2017 00:19:58 +0000 (00:19 +0000)]
Add support for Vector Multiply Add Saturated on PowerPC

6 years agoFix release note on associated constants
Lukas H [Thu, 31 Aug 2017 23:17:08 +0000 (01:17 +0200)]
Fix release note on associated constants

Associated constants seem to be stable everywhere, not just in traits

6 years agoFix typo in 1.20.0 release notes
Phlosioneer [Thu, 31 Aug 2017 23:12:07 +0000 (19:12 -0400)]
Fix typo in 1.20.0 release notes

str::from_boxed_utf8_unchecked rather than ste::

6 years agoImplement From<&str> for Symbol.
Eduard-Mihai Burtescu [Thu, 31 Aug 2017 20:23:52 +0000 (23:23 +0300)]
Implement From<&str> for Symbol.

6 years agoadd a lowercase suggestion to unknown_lints
Andre Bogus [Sat, 26 Aug 2017 20:18:04 +0000 (22:18 +0200)]
add a lowercase suggestion to unknown_lints

6 years agoMerge branch 'master' into master
Mark [Thu, 31 Aug 2017 16:49:48 +0000 (12:49 -0400)]
Merge branch 'master' into master

6 years agoExpand docs of multi-address behavior of some UDP/TCP APIs.
Corey Farwell [Thu, 31 Aug 2017 02:11:48 +0000 (22:11 -0400)]
Expand docs of multi-address behavior of some UDP/TCP APIs.

Fixes https://github.com/rust-lang/rust/issues/22569.

6 years agoAdd full git commit hash to release channel manifests
Simon Sapin [Thu, 31 Aug 2017 14:37:14 +0000 (16:37 +0200)]
Add full git commit hash to release channel manifests

The full hash is necessary to build the download URL for "alternate"
compiler builds.
This is a first step for
https://github.com/rust-lang-nursery/rustup.rs/issues/1099

6 years agoUpdate Cargo to 0.23.0 and our lockfile
Alex Crichton [Mon, 28 Aug 2017 15:57:37 +0000 (08:57 -0700)]
Update Cargo to 0.23.0 and our lockfile

6 years agoBump to 1.22.0
Alex Crichton [Mon, 28 Aug 2017 15:55:45 +0000 (08:55 -0700)]
Bump to 1.22.0

6 years agoUpdate bootstrap compiler
Alex Crichton [Fri, 25 Aug 2017 15:39:02 +0000 (08:39 -0700)]
Update bootstrap compiler

This commit updates the bootstrap compiler and clears out a number
of #[cfg(stage0)] annotations and related business

6 years agoAuto merge of #41991 - GuillaumeGomez:rustdoc-html-diff, r=nrc
bors [Thu, 31 Aug 2017 08:52:03 +0000 (08:52 +0000)]
Auto merge of #41991 - GuillaumeGomez:rustdoc-html-diff, r=nrc

Add warnings when rustdoc html rendering differs

6 years agodowngrade libgit2
Guillaume Gomez [Thu, 31 Aug 2017 07:49:38 +0000 (09:49 +0200)]
downgrade libgit2

6 years agoadd `fn` to syntax of rustc::ty::maps::define_maps
Alex Burka [Thu, 31 Aug 2017 02:25:02 +0000 (22:25 -0400)]
add `fn` to syntax of rustc::ty::maps::define_maps

6 years agoSet CFG_VERSION env var for tool builds
Nick Cameron [Thu, 31 Aug 2017 03:24:11 +0000 (15:24 +1200)]
Set CFG_VERSION env var for tool builds

6 years agoUpdate rls
Nick Cameron [Wed, 30 Aug 2017 05:09:36 +0000 (17:09 +1200)]
Update rls

6 years agoupdate unimplemented! docs
MarkMcCaskey [Thu, 31 Aug 2017 02:26:54 +0000 (22:26 -0400)]
update unimplemented! docs

6 years agoFix typo in doc `ToSocketAddrs` example.
Corey Farwell [Thu, 31 Aug 2017 02:03:03 +0000 (22:03 -0400)]
Fix typo in doc `ToSocketAddrs` example.

6 years agorustbuild: update the rust-src filter for compiler-rt
Josh Stone [Thu, 31 Aug 2017 01:20:59 +0000 (18:20 -0700)]
rustbuild: update the rust-src filter for compiler-rt

We wanted `src/compiler-rt/test` filtered from the `rust-src` package,
but that path is now `src/libcompiler_builtins/compiler-rt/test`.  This
saves over half of the installed rust-src size. (50MB -> 22MB)

6 years agoAuto merge of #44186 - alexcrichton:rollup, r=alexcrichton
bors [Thu, 31 Aug 2017 01:16:17 +0000 (01:16 +0000)]
Auto merge of #44186 - alexcrichton:rollup, r=alexcrichton

Rollup of 8 pull requests

- Successful merges: #44044, #44089, #44116, #44125, #44154, #44157, #44160, #44172
- Failed merges: #44162

6 years agoUpdate libc to fix sparc compiles
Alex Crichton [Thu, 31 Aug 2017 00:58:39 +0000 (17:58 -0700)]
Update libc to fix sparc compiles

6 years agorustc: Fix reachability with cross-crate generators
Alex Crichton [Thu, 31 Aug 2017 00:32:21 +0000 (17:32 -0700)]
rustc: Fix reachability with cross-crate generators

Same solution as in f2df1857

Closes #44181

6 years agobootstrap: add openssl configuration mapping for i686-unknown-netbsd
Jonathan A. Kollasch [Wed, 30 Aug 2017 23:22:46 +0000 (18:22 -0500)]
bootstrap: add openssl configuration mapping for i686-unknown-netbsd

6 years agorustc: Remove the `used_unsafe` field on TyCtxt
Alex Crichton [Wed, 30 Aug 2017 22:18:46 +0000 (15:18 -0700)]
rustc: Remove the `used_unsafe` field on TyCtxt

Now that lint levels are available for the entire compilation, this can be an
entirely local lint in `effect.rs`

6 years agoexpand on using rustup custom toolchains in CONTRIBUTING.md
QuietMisdreavus [Wed, 30 Aug 2017 22:06:12 +0000 (17:06 -0500)]
expand on using rustup custom toolchains in CONTRIBUTING.md

fixes #42484

6 years agoFix invalid display of enum sub-fields docs
Guillaume Gomez [Wed, 30 Aug 2017 21:16:25 +0000 (23:16 +0200)]
Fix invalid display of enum sub-fields docs

6 years agoMerge branch 'hide-trait-map' into rollup
Alex Crichton [Wed, 30 Aug 2017 16:12:53 +0000 (09:12 -0700)]
Merge branch 'hide-trait-map' into rollup

6 years agoRollup merge of #44172 - mattico:patch-2, r=frewsxcv
Alex Crichton [Wed, 30 Aug 2017 16:11:16 +0000 (11:11 -0500)]
Rollup merge of #44172 - mattico:patch-2, r=frewsxcv

Fix link in unstable book entry for Generators

6 years agoRollup merge of #44160 - AndyGauge:api-docs-macros, r=steveklabnik
Alex Crichton [Wed, 30 Aug 2017 16:11:15 +0000 (11:11 -0500)]
Rollup merge of #44160 - AndyGauge:api-docs-macros, r=steveklabnik

API docs: macros.  Standard Documentation Checklist

Fixes #29381
r? @steveklabnik

6 years agoRollup merge of #44157 - alexcrichton:no-specializes-cache, r=eddyb
Alex Crichton [Wed, 30 Aug 2017 16:11:14 +0000 (11:11 -0500)]
Rollup merge of #44157 - alexcrichton:no-specializes-cache, r=eddyb

rustc: Remove `specialization_cache` in favor of a query

This commit removes the `specialization_cache` field of `TyCtxt` by moving it to
a dedicated query, which it turned out was already quite easily structured to do
so!

cc #44137

6 years agoAuto merge of #43932 - eddyb:const-scoping, r=nikomatsakis
bors [Wed, 30 Aug 2017 20:12:25 +0000 (20:12 +0000)]
Auto merge of #43932 - eddyb:const-scoping, r=nikomatsakis

Forward-compatibly deny drops in constants if they *could* actually run.

This is part of #40036, specifically the checks for user-defined destructor invocations on locals which *may not* have been moved away, the motivating example being:
```rust
const FOO: i32 = (HasDrop {...}, 0).1;
```
The evaluation of constant MIR will continue to create `'static` slots for more locals than is necessary (if `Storage{Live,Dead}` statements are ignored), but it shouldn't be misusable.

r? @nikomatsakis

6 years agoAdd license exceptions
Guillaume Gomez [Wed, 30 Aug 2017 18:07:58 +0000 (20:07 +0200)]
Add license exceptions

6 years agoRollup merge of #44125 - SergioBenitez:master, r=nrc
Alex Crichton [Wed, 30 Aug 2017 16:11:12 +0000 (11:11 -0500)]
Rollup merge of #44125 - SergioBenitez:master, r=nrc

Initial diagnostic API for proc-macros.

This commit introduces the ability to create and emit `Diagnostic` structures from proc-macros, allowing for proc-macro authors to emit warning, error, note, and help messages just like the compiler does.

The API is somewhat based on the diagnostic API already present in `rustc` with several changes that improve usability. The entry point into the diagnostic API is a new `Diagnostic` type which is primarily created through new `error`, `warning`, `help`, and `note` methods on `Span`. The `Diagnostic` type records the diagnostic level, message, and optional `Span` for the top-level diagnostic and contains a `Vec` of all of the child diagnostics. Child diagnostics can be added through builder methods on `Diagnostic`.

A typical use of the API may look like:

```rust
let token = parse_token();
let val = parse_val();

val.span
    .error(format!("expected A but found {}", val))
    .span_note(token.span, "because of this token")
    .help("consider using a different token")
    .emit();
```

cc @jseyfried @nrc @dtolnay @alexcrichton

6 years agoRollup merge of #44116 - alexcrichton:update-libc, r=Mark-Simulacrum
Alex Crichton [Wed, 30 Aug 2017 16:11:11 +0000 (11:11 -0500)]
Rollup merge of #44116 - alexcrichton:update-libc, r=Mark-Simulacrum

Update the libc submodule

Brings in a few fixes for wasm/asmjs

6 years agoRollup merge of #44089 - alexcrichton:trait-proc-macro, r=nrc
Alex Crichton [Wed, 30 Aug 2017 16:11:10 +0000 (11:11 -0500)]
Rollup merge of #44089 - alexcrichton:trait-proc-macro, r=nrc

rustc: Fix proc_macro expansions on trait methods

This commit fixes procedural macro attributes being attached to trait methods,
ensuring that they get resolved and expanded as other procedural macro
attributes. The bug here was that `current_module` on the resolver was
accidentally set to be a trait when it's otherwise only ever expecting a
`mod`/block module. The actual fix here came from @jseyfried, I'm just helping
to land it in the compiler!

Closes #42493

6 years agoRollup merge of #44044 - mattico:string-splice-return, r=dtolnay
Alex Crichton [Wed, 30 Aug 2017 16:11:09 +0000 (11:11 -0500)]
Rollup merge of #44044 - mattico:string-splice-return, r=dtolnay

Remove Splice struct return value from String::splice

The implementation is now almost identical to the one in the RFC.

Fixes #44038
cc #32310

6 years agoAuto merge of #43895 - JeremySorensen:master, r=alexcrichton
bors [Wed, 30 Aug 2017 15:43:09 +0000 (15:43 +0000)]
Auto merge of #43895 - JeremySorensen:master, r=alexcrichton

make ignore-git true by default when channel is dev

Fixes #43771
(Handle git info in rustbuild differently)

6 years agoAuto merge of #43968 - petrochenkov:span2, r=michaelwoerister
bors [Wed, 30 Aug 2017 11:08:26 +0000 (11:08 +0000)]
Auto merge of #43968 - petrochenkov:span2, r=michaelwoerister

Make fields of `Span` private

I actually tried to intern spans and benchmark the result<sup>*</sup>, and this was a prerequisite.
This kind of encapsulation will be a prerequisite for any other attempt to compress span's representation, so I decided to submit this change alone.

The issue https://github.com/rust-lang/rust/issues/43088 seems relevant, but it looks like `SpanId` won't be able to reuse this interface, unless the tables are global (like interner that I tried) and are not a part of HIR.
r? @michaelwoerister anyway

<sup>*</sup> Interning means 2-3 times more space is required for a single span, but duplicates are free. In practice it turned out that duplicates are not *that* common, so more memory was wasted by interning rather than saved.

6 years agoRemove some false positive issues
Guillaume Gomez [Sun, 27 Aug 2017 10:40:56 +0000 (12:40 +0200)]
Remove some false positive issues

6 years agoAuto merge of #43903 - oli-obk:alignto, r=aturon
bors [Wed, 30 Aug 2017 08:06:42 +0000 (08:06 +0000)]
Auto merge of #43903 - oli-obk:alignto, r=aturon

Add align_offset intrinsic

see https://github.com/rust-lang/rfcs/pull/2043 for details and the plan towards stabilization (reexport in `core::mem` via various convenience functions)

as per @scottmcm 's [comment](https://github.com/rust-lang/rfcs/pull/2043#issuecomment-316818169), this is just the intrinsic (which is obviously unstable).

6 years agoTemporary fix for a test (will require another update when this is fully merged)
Guillaume Gomez [Sun, 27 Aug 2017 12:47:35 +0000 (14:47 +0200)]
Temporary fix for a test (will require another update when this is fully merged)

6 years agoPrint warning whatever the rendering mode
Guillaume Gomez [Mon, 31 Jul 2017 21:04:32 +0000 (23:04 +0200)]
Print warning whatever the rendering mode

6 years agoSet python binary name to python 2.7
Guillaume Gomez [Fri, 14 Jul 2017 10:30:17 +0000 (12:30 +0200)]
Set python binary name to python 2.7

6 years agoUpdate unstable-crate test
Guillaume Gomez [Wed, 14 Jun 2017 11:35:45 +0000 (13:35 +0200)]
Update unstable-crate test

6 years agoAdd warnings when rustdoc html rendering differs
Guillaume Gomez [Sun, 14 May 2017 13:14:02 +0000 (15:14 +0200)]
Add warnings when rustdoc html rendering differs

6 years agoAuto merge of #43880 - arielb1:noninvasive-probe, r=nikomatsakis
bors [Wed, 30 Aug 2017 05:30:28 +0000 (05:30 +0000)]
Auto merge of #43880 - arielb1:noninvasive-probe, r=nikomatsakis

Remove the trait selection impl in method::probe

This removes the hacky trait selection reimplementation in `method::probe`, which occasionally comes and causes problems.

There are 2 issues I've found with this approach:
1. The older implementation sometimes had a "guess" type from an impl, which allowed subtyping to work. This is why I needed to make a change in `libtest`: there's an `impl<A> Clone for fn(A)` and we're calling `<for<'a> fn(&'a T) as Clone>::clone`. The older implementation would do a subtyping between the impl type and the trait type, so it would do the check for `<fn(A) as Clone>::clone`, and confirmation would continue with the subtyping. The newer implementation directly passes `<for<'a> fn(&'a T) as Clone>::clone` to selection, which fails. I'm not sure how big of a problem that would be in reality, especially after #43690 would remove the `Clone` problem, but I still want a crater run to avoid breaking the world.
2. The older implementation "looked into" impls to display error messages. I'm not sure that's an advantage - it looked exactly 1 level deep.

r? @eddyb

6 years agofix option for RUST_CONFIGURE_ARGS to be rust.ignore-git=false
Jeremy Sorensen [Wed, 30 Aug 2017 05:01:51 +0000 (22:01 -0700)]
fix option for RUST_CONFIGURE_ARGS to be rust.ignore-git=false