]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agoDon't display "Deprecated since" for non-rustc deprecated items
varkor [Tue, 5 Feb 2019 21:51:06 +0000 (22:51 +0100)]
Don't display "Deprecated since" for non-rustc deprecated items

5 years agoDo not apply future deprecation warning for #[deprecated]
varkor [Tue, 5 Feb 2019 21:50:44 +0000 (22:50 +0100)]
Do not apply future deprecation warning for #[deprecated]

5 years agoAuto merge of #58213 - Mark-Simulacrum:fix-checktools, r=alexcrichton
bors [Fri, 8 Feb 2019 10:17:01 +0000 (10:17 +0000)]
Auto merge of #58213 - Mark-Simulacrum:fix-checktools, r=alexcrichton

Add embedded book to test such that checktools works

r? @alexcrichton

FWIW this doesn't attempt to make sure we don't break check tools again -- we intentionally make the bash script not exit when x.py fails so we'd need some special case handling so for now I'm just fixing the bug itself, not its cause.

5 years agoAuto merge of #58191 - varkor:const-generics-ast, r=petrochenkov
bors [Fri, 8 Feb 2019 05:50:16 +0000 (05:50 +0000)]
Auto merge of #58191 - varkor:const-generics-ast, r=petrochenkov

Add const generics to the AST

This is mostly split out from https://github.com/rust-lang/rust/pull/53645 in an effort to make progress merging const generics piecewise instead of in one go.

cc @yodaldevoid, @petrochenkov

r? @eddyb

5 years agoResolve incorrect diagnostic for using a non-const value in a constant
varkor [Thu, 7 Feb 2019 15:03:12 +0000 (16:03 +0100)]
Resolve incorrect diagnostic for using a non-const value in a constant

5 years agoAuto merge of #58266 - GuillaumeGomez:rollup, r=GuillaumeGomez
bors [Thu, 7 Feb 2019 14:47:57 +0000 (14:47 +0000)]
Auto merge of #58266 - GuillaumeGomez:rollup, r=GuillaumeGomez

Rollup of 11 pull requests

Successful merges:

 - #57504 (Re-enable history api on file:// protocol)
 - #57848 (Generate a documentation page for core::mem::transmute.)
 - #57884 (Update minifier version)
 - #57954 (rustdoc: remove blank unstable spans)
 - #58028 (Fix image link in the settings menu)
 - #58033 (rustdoc: wrap stability tags in colored spans)
 - #58086 ([rustdoc] Improve file list display)
 - #58143 (Sort elements in the sidebar)
 - #58146 (Prevent automatic collapse of methods impl blocks)
 - #58150 (Don't apply impl block collapse rules to trait impls)
 - #58185 (Remove images' url to make it work even without internet connection)

Failed merges:

r? @ghost

5 years agoAdd a test forbidding the use of const parameters in inner items
varkor [Thu, 7 Feb 2019 14:00:14 +0000 (15:00 +0100)]
Add a test forbidding the use of const parameters in inner items

5 years agoMake name resolution handle consts in GenericParamsFromOuterFunction properly
varkor [Thu, 7 Feb 2019 13:59:59 +0000 (14:59 +0100)]
Make name resolution handle consts in GenericParamsFromOuterFunction properly

5 years agoParse negative literals in const generic arguments
varkor [Thu, 7 Feb 2019 13:58:47 +0000 (14:58 +0100)]
Parse negative literals in const generic arguments

5 years agoAdd warning for a parameter list with an attribute but no parameters
varkor [Thu, 7 Feb 2019 13:58:31 +0000 (14:58 +0100)]
Add warning for a parameter list with an attribute but no parameters

5 years agoAdd test for generic parameter list solely containing an attribute
varkor [Thu, 7 Feb 2019 09:58:08 +0000 (10:58 +0100)]
Add test for generic parameter list solely containing an attribute

5 years agoFix update to 2018 edition
varkor [Thu, 7 Feb 2019 09:27:56 +0000 (10:27 +0100)]
Fix update to 2018 edition

5 years agoAdjust generic const param resolution
varkor [Thu, 7 Feb 2019 09:10:51 +0000 (10:10 +0100)]
Adjust generic const param resolution

5 years agoAdjust parser generic parameter errors
varkor [Thu, 7 Feb 2019 09:10:11 +0000 (10:10 +0100)]
Adjust parser generic parameter errors

5 years agoFix E0670 doc error
varkor [Tue, 5 Feb 2019 20:40:18 +0000 (21:40 +0100)]
Fix E0670 doc error

5 years agoFix ast_validation printing of const generics
varkor [Tue, 5 Feb 2019 18:00:07 +0000 (19:00 +0100)]
Fix ast_validation printing of const generics

5 years agoFix const generic parameter save analysis
varkor [Tue, 5 Feb 2019 17:59:53 +0000 (18:59 +0100)]
Fix const generic parameter save analysis

5 years agoAdd test for const parameter before other generic parameters
varkor [Tue, 5 Feb 2019 16:55:25 +0000 (17:55 +0100)]
Add test for const parameter before other generic parameters

5 years agoAdd test for const parameter depending on type parameter
varkor [Tue, 5 Feb 2019 16:55:12 +0000 (17:55 +0100)]
Add test for const parameter depending on type parameter

5 years agoAdd test forbidding const parameters in const fn
varkor [Tue, 5 Feb 2019 16:54:23 +0000 (17:54 +0100)]
Add test forbidding const parameters in const fn

5 years agoUpdate tests
varkor [Tue, 5 Feb 2019 16:00:19 +0000 (17:00 +0100)]
Update tests

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd const generics feature gate test
varkor [Tue, 5 Feb 2019 15:58:53 +0000 (16:58 +0100)]
Add const generics feature gate test

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoSupport const generics in save analysis
varkor [Tue, 5 Feb 2019 15:53:26 +0000 (16:53 +0100)]
Support const generics in save analysis

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd error for const parameters depending on type parameters
varkor [Tue, 5 Feb 2019 15:52:31 +0000 (16:52 +0100)]
Add error for const parameters depending on type parameters

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoValidate generic parameter and argument order in ast_validation
varkor [Tue, 5 Feb 2019 15:52:17 +0000 (16:52 +0100)]
Validate generic parameter and argument order in ast_validation

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd lowering errors for const generics
varkor [Tue, 5 Feb 2019 15:52:02 +0000 (16:52 +0100)]
Add lowering errors for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd const params to Def
varkor [Tue, 5 Feb 2019 15:51:49 +0000 (16:51 +0100)]
Add const params to Def

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd resolution errors for const generics
varkor [Tue, 5 Feb 2019 15:50:55 +0000 (16:50 +0100)]
Add resolution errors for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd pretty-printing for const generics
varkor [Tue, 5 Feb 2019 15:50:16 +0000 (16:50 +0100)]
Add pretty-printing for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoSupport const generics in derive
varkor [Tue, 5 Feb 2019 15:50:00 +0000 (16:50 +0100)]
Support const generics in derive

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoParse const generics
varkor [Tue, 5 Feb 2019 15:49:38 +0000 (16:49 +0100)]
Parse const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd const_generics feature flag
varkor [Tue, 5 Feb 2019 15:49:10 +0000 (16:49 +0100)]
Add const_generics feature flag

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd Const kind to AST
varkor [Tue, 5 Feb 2019 15:48:45 +0000 (16:48 +0100)]
Add Const kind to AST

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoRollup merge of #58185 - GuillaumeGomez:images-url, r=SimonSapin
Guillaume Gomez [Thu, 7 Feb 2019 13:28:41 +0000 (14:28 +0100)]
Rollup merge of #58185 - GuillaumeGomez:images-url, r=SimonSapin

Remove images' url to make it work even without internet connection

Needed for local std docs mainly.

cc @SimonSapin

r? @QuietMisdreavus

5 years agoRollup merge of #58150 - GuillaumeGomez:dont-apply-impl-collapse-rules-to-trait-impls...
Guillaume Gomez [Thu, 7 Feb 2019 13:28:40 +0000 (14:28 +0100)]
Rollup merge of #58150 - GuillaumeGomez:dont-apply-impl-collapse-rules-to-trait-impls, r=Manishearth

Don't apply impl block collapse rules to trait impls

Fixes #58147.

r? @QuietMisdreavus

5 years agoRollup merge of #58146 - GuillaumeGomez:dont-collapse-everything, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:38 +0000 (14:28 +0100)]
Rollup merge of #58146 - GuillaumeGomez:dont-collapse-everything, r=QuietMisdreavus

Prevent automatic collapse of methods impl blocks

Fixes #57582.

r? @QuietMisdreavus

5 years agoRollup merge of #58143 - GuillaumeGomez:sort-elements-in-sidebar, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:37 +0000 (14:28 +0100)]
Rollup merge of #58143 - GuillaumeGomez:sort-elements-in-sidebar, r=QuietMisdreavus

Sort elements in the sidebar

Fixes #57448.

Not sorting fields or variants though.

r? @QuietMisdreavus

5 years agoRollup merge of #58086 - GuillaumeGomez:rustdoc-file-list-improvement, r=Manishearth
Guillaume Gomez [Thu, 7 Feb 2019 13:28:36 +0000 (14:28 +0100)]
Rollup merge of #58086 - GuillaumeGomez:rustdoc-file-list-improvement, r=Manishearth

[rustdoc] Improve file list display

Improve a bit the arrows to show a folder's file and the arrow to show/hide the left panel.

r? @QuietMisdreavus

5 years agoRollup merge of #58033 - euclio:rustdoc-tags, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:34 +0000 (14:28 +0100)]
Rollup merge of #58033 - euclio:rustdoc-tags, r=QuietMisdreavus

rustdoc: wrap stability tags in colored spans

A cosmetic change to make the stability tags stand out a bit against the docs. Opening for discussion.

Before:

![screen shot 2019-01-31 at 3 29 36 pm](https://user-images.githubusercontent.com/1372438/52083406-54730d80-256d-11e9-8e61-b8caff569434.png)
![screen shot 2019-01-31 at 3 31 32 pm](https://user-images.githubusercontent.com/1372438/52083408-54730d80-256d-11e9-97b7-43e808448f65.png)

After:
![screen shot 2019-01-31 at 3 29 18 pm](https://user-images.githubusercontent.com/1372438/52083405-54730d80-256d-11e9-9983-19d9519b2ed8.png)
![screen shot 2019-01-31 at 3 29 46 pm](https://user-images.githubusercontent.com/1372438/52083407-54730d80-256d-11e9-8c32-11a1ad7d3f34.png)

r? @QuietMisdreavus

5 years agoRollup merge of #58028 - GuillaumeGomez:fix-settings-image-link, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:33 +0000 (14:28 +0100)]
Rollup merge of #58028 - GuillaumeGomez:fix-settings-image-link, r=QuietMisdreavus

Fix image link in the settings menu

Fixes #57892.

r? @QuietMisdreavus

5 years agoRollup merge of #57954 - euclio:rustdoc-stability, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:32 +0000 (14:28 +0100)]
Rollup merge of #57954 - euclio:rustdoc-stability, r=QuietMisdreavus

rustdoc: remove blank unstable spans

Rustdoc generates blank unstable spans for unstable struct fields: ![screen shot 2019-01-28 at 1 05 04 pm](https://user-images.githubusercontent.com/1372438/51856295-5e8ed500-22fd-11e9-8074-025eddb4ef65.png)

This PR removes them:
![screen shot 2019-01-28 at 1 07 22 pm](https://user-images.githubusercontent.com/1372438/51856424-aada1500-22fd-11e9-86f0-34e2aa78b8b1.png)

r? @QuietMisdreavus

5 years agoRollup merge of #57884 - GuillaumeGomez:update-minifier-array, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:30 +0000 (14:28 +0100)]
Rollup merge of #57884 - GuillaumeGomez:update-minifier-array, r=QuietMisdreavus

Update minifier version

Should fix #57754 (at least it's a bit faster on my computer).

The whole point of this update is to create a huge array instead of creating a lot of variables.

r? @QuietMisdreavus

5 years agoRollup merge of #57848 - jrvanwhy:transmute-export-doc, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:29 +0000 (14:28 +0100)]
Rollup merge of #57848 - jrvanwhy:transmute-export-doc, r=QuietMisdreavus

Generate a documentation page for core::mem::transmute.

In `#[no_std]` environments, `std::mem::transmute` is unavailable. Searching for "core transmute" online only pulls up `core::intrinsics::transmute`, which is behind the (unstable) `core_intrinsics` feature flag. Users wishing to use transmute in `#[no_std]` environments typically should use `core::mem::transmute` instead, as it is stable. This documentation makes `core::mem::transmute` discoverable.

5 years agoRollup merge of #57504 - GuillaumeGomez:re-enable-history, r=QuietMisdreavus
Guillaume Gomez [Thu, 7 Feb 2019 13:28:27 +0000 (14:28 +0100)]
Rollup merge of #57504 - GuillaumeGomez:re-enable-history, r=QuietMisdreavus

Re-enable history api on file:// protocol

Fixes #57135.

I tested locally on chrome (since it was the browser having issues with history management on `file://` protocol) and it worked fine so I guess we can re-enable it.

r? @QuietMisdreavus

5 years agoDon't apply impl block collapse rules to trait impls
Guillaume Gomez [Mon, 4 Feb 2019 14:50:46 +0000 (15:50 +0100)]
Don't apply impl block collapse rules to trait impls

5 years agoRemove images' url to make it work even without internet connection
Guillaume Gomez [Tue, 5 Feb 2019 13:37:15 +0000 (14:37 +0100)]
Remove images' url to make it work even without internet connection

5 years agoAuto merge of #58010 - Zoxc:parallel-passes, r=michaelwoerister
bors [Thu, 7 Feb 2019 09:49:08 +0000 (09:49 +0000)]
Auto merge of #58010 - Zoxc:parallel-passes, r=michaelwoerister

Move privacy checking later in the pipeline and make some passes run in parallel

r? @michaelwoerister

5 years agoAuto merge of #58254 - kennytm:rollup, r=kennytm
bors [Thu, 7 Feb 2019 07:11:22 +0000 (07:11 +0000)]
Auto merge of #58254 - kennytm:rollup, r=kennytm

Rollup of 23 pull requests

Successful merges:

 - #58118 (Transition libtest to 2018 edition)
 - #58119 (libproc_macro => 2018)
 - #58123 (Avoid some bounds checks in binary_heap::{PeekMut,Hole})
 - #58124 (libsyntax_pos => 2018)
 - #58133 (libsyntax_ext => 2018)
 - #58136 (Improve error message and docs for non-UTF-8 bytes in stdio on Windows)
 - #58156 (update submodule: rust-installer from 27dec6c to ccdc47b)
 - #58192 (Do not ICE in codegen when using a extern_type static)
 - #58193 (Move librustc to 2018)
 - #58210 (Make an assert debug-only in `find_constraint_paths_between_regions`.)
 - #58217 (librustc_tsan => 2018)
 - #58218 (librustc_msan => 2018)
 - #58219 (librustc_asan => 2018)
 - #58220 (libprofiler_builtins => 2018)
 - #58223 (librustc_lsan => 2018)
 - #58225 (librustc_fs_util => 2018)
 - #58228 (librustc_plugin => 2018)
 - #58236 (librustc_resolve => 2018)
 - #58237 (Fix broken grammar in iter::from_fn() docs)
 - #58239 (librustc_apfloat => 2018)
 - #58240 (librustc_errors => 2018)
 - #58241 (librustc_llvm => 2018)
 - #58242 (Document the one TyKind that isn't documented)

Failed merges:

 - #58185 (Remove images' url to make it work even without internet connection)

r? @ghost

5 years agoRollup merge of #58242 - notriddle:patch-3, r=zackmdavis
kennytm [Thu, 7 Feb 2019 05:58:02 +0000 (13:58 +0800)]
Rollup merge of #58242 - notriddle:patch-3, r=zackmdavis

Document the one TyKind that isn't documented

This is especially confusing since the name `Foreign` and the name `extern type` are so different. I deduced that they're the same by consulting git-blame.

5 years agoRollup merge of #58241 - taiki-e:librustc_llvm-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:58:01 +0000 (13:58 +0800)]
Rollup merge of #58241 - taiki-e:librustc_llvm-2018, r=Centril

librustc_llvm => 2018

Transitions `librustc_llvm` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58240 - taiki-e:librustc_errors-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:58:00 +0000 (13:58 +0800)]
Rollup merge of #58240 - taiki-e:librustc_errors-2018, r=Centril

librustc_errors => 2018

Transitions `librustc_errors` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58239 - taiki-e:librustc_apfloat-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:59 +0000 (13:57 +0800)]
Rollup merge of #58239 - taiki-e:librustc_apfloat-2018, r=Centril

librustc_apfloat => 2018

Transitions `librustc_apfloat` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58237 - sdroege:docs-its-its, r=SimonSapin
kennytm [Thu, 7 Feb 2019 05:57:57 +0000 (13:57 +0800)]
Rollup merge of #58237 - sdroege:docs-its-its, r=SimonSapin

Fix broken grammar in iter::from_fn() docs

Was introduced by https://github.com/rust-lang/rust/pull/58062

CC @SimonSapin

5 years agoRollup merge of #58236 - taiki-e:librustc_resolve-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:56 +0000 (13:57 +0800)]
Rollup merge of #58236 - taiki-e:librustc_resolve-2018, r=Centril

librustc_resolve => 2018

Transitions `librustc_resolve` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58228 - taiki-e:librustc_plugin-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:55 +0000 (13:57 +0800)]
Rollup merge of #58228 - taiki-e:librustc_plugin-2018, r=Centril

librustc_plugin => 2018

Transitions `librustc_plugin` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58225 - taiki-e:librustc_fs_util-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:54 +0000 (13:57 +0800)]
Rollup merge of #58225 - taiki-e:librustc_fs_util-2018, r=Centril

librustc_fs_util => 2018

Transitions `librustc_fs_util` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58223 - taiki-e:librustc_lsan-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:53 +0000 (13:57 +0800)]
Rollup merge of #58223 - taiki-e:librustc_lsan-2018, r=Centril

librustc_lsan => 2018

Transitions `librustc_lsan` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58220 - taiki-e:libprofiler_builtins-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:52 +0000 (13:57 +0800)]
Rollup merge of #58220 - taiki-e:libprofiler_builtins-2018, r=Centril

libprofiler_builtins => 2018

Transitions `libprofiler_builtins` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58219 - taiki-e:librustc_asan-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:50 +0000 (13:57 +0800)]
Rollup merge of #58219 - taiki-e:librustc_asan-2018, r=Centril

librustc_asan => 2018

Transitions `librustc_asan` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58218 - taiki-e:librustc_msan-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:49 +0000 (13:57 +0800)]
Rollup merge of #58218 - taiki-e:librustc_msan-2018, r=Centril

librustc_msan => 2018

Transitions `librustc_msan` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58217 - taiki-e:librustc_tsan-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:48 +0000 (13:57 +0800)]
Rollup merge of #58217 - taiki-e:librustc_tsan-2018, r=Centril

librustc_tsan => 2018

Transitions `librustc_tsan` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58210 - nnethercote:find_outlives-debug_assert, r=matthewjasper
kennytm [Thu, 7 Feb 2019 05:57:47 +0000 (13:57 +0800)]
Rollup merge of #58210 - nnethercote:find_outlives-debug_assert, r=matthewjasper

Make an assert debug-only in `find_constraint_paths_between_regions`.

This reduces instruction counts for NLL builds of `wg-grammar` by over
20%.

r? @nikomatsakis

5 years agoRollup merge of #58193 - mark-i-m:rustc-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:45 +0000 (13:57 +0800)]
Rollup merge of #58193 - mark-i-m:rustc-2018, r=Centril

Move librustc to 2018

r? @Centril

Part of #58099

It would be great to get this reviewed quickly to avoid merge conflicts...

5 years agoRollup merge of #58192 - dlrobertson:fix_57876, r=oli-obk
kennytm [Thu, 7 Feb 2019 05:57:44 +0000 (13:57 +0800)]
Rollup merge of #58192 - dlrobertson:fix_57876, r=oli-obk

Do not ICE in codegen when using a extern_type static

The layout of a extern_type static is unsized, but may pass the
Well-Formed check in typeck (See #55257).  As a result, we
cannot assume that a static is sized when generating the `Place`
for an r-value.

Fixes: #57876
r? @oli-obk

5 years agoRollup merge of #58156 - h-michael:update-rust-installer, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:43 +0000 (13:57 +0800)]
Rollup merge of #58156 - h-michael:update-rust-installer, r=Centril

update submodule: rust-installer from 27dec6c to ccdc47b

Update rust-installer cc: #58099
https://github.com/rust-lang/rust-installer/compare/27dec6c...ccdc47b

r? @Centril

5 years agoRollup merge of #58136 - abonander:doc-win-stdio-unicode, r=dtolnay
kennytm [Thu, 7 Feb 2019 05:57:41 +0000 (13:57 +0800)]
Rollup merge of #58136 - abonander:doc-win-stdio-unicode, r=dtolnay

Improve error message and docs for non-UTF-8 bytes in stdio on Windows

This should make debugging problems like abonander/multipart#106 significantly more straightforward in the future.

cc #23344, @retep998 @alexcrichton

Not sure who do r? so I'll let rust-highfive pick one.

5 years agoRollup merge of #58133 - taiki-e:libsyntax_ext-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:40 +0000 (13:57 +0800)]
Rollup merge of #58133 - taiki-e:libsyntax_ext-2018, r=Centril

libsyntax_ext => 2018

Transitions `libsyntax_ext` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58124 - taiki-e:libsyntax_pos-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:39 +0000 (13:57 +0800)]
Rollup merge of #58124 - taiki-e:libsyntax_pos-2018, r=Centril

libsyntax_pos => 2018

Transitions `libsyntax_pos` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58123 - lnicola:binary-heap-no-bounds-checks, r=sfackler
kennytm [Thu, 7 Feb 2019 05:57:38 +0000 (13:57 +0800)]
Rollup merge of #58123 - lnicola:binary-heap-no-bounds-checks, r=sfackler

Avoid some bounds checks in binary_heap::{PeekMut,Hole}

Fixes #58121.

5 years agoRollup merge of #58119 - taiki-e:libproc_macro-2018, r=petrochenkov
kennytm [Thu, 7 Feb 2019 05:57:37 +0000 (13:57 +0800)]
Rollup merge of #58119 - taiki-e:libproc_macro-2018, r=petrochenkov

libproc_macro => 2018

Transitions `libproc_macro` to Rust 2018; cc #58099

r? @Centril

5 years agoRollup merge of #58118 - h-michael:libtest-theme-2018, r=Centril
kennytm [Thu, 7 Feb 2019 05:57:35 +0000 (13:57 +0800)]
Rollup merge of #58118 - h-michael:libtest-theme-2018, r=Centril

Transition libtest to 2018 edition

Transitions libtest to Rust 2018; cc #58099
r? @Centril

5 years agoAuto merge of #57998 - niklasf:align-enum, r=nagisa
bors [Thu, 7 Feb 2019 04:26:08 +0000 (04:26 +0000)]
Auto merge of #57998 - niklasf:align-enum, r=nagisa

Allow #[repr(align(x))] on enums (#57996)

Tracking issue: #57996

Implements an extension of [RFC 1358](https://github.com/rust-lang/rfcs/blob/master/text/1358-repr-align.md) behind a feature flag (`repr_align_enum`). Originally introduced here for structs: #39999.

It seems like only HIR-level changes are required, since enums are already aware of their alignment (due to alignment of their limbs).

cc @bitshifter

5 years agoAuto merge of #58125 - taiki-e:libsyntax-2018, r=Centril
bors [Thu, 7 Feb 2019 01:41:14 +0000 (01:41 +0000)]
Auto merge of #58125 - taiki-e:libsyntax-2018, r=Centril

libsyntax => 2018

Transitions `libsyntax` to Rust 2018; cc #58099

r? @Centril

5 years agoAuto merge of #58224 - pietroalbini:revert-appveyor-debug, r=alexcrichton
bors [Wed, 6 Feb 2019 22:48:39 +0000 (22:48 +0000)]
Auto merge of #58224 - pietroalbini:revert-appveyor-debug, r=alexcrichton

Revert appveyor debug code

r? @alexcrichton

5 years agoDocument the one TyKind that isn't documented
Michael Howell [Wed, 6 Feb 2019 19:27:01 +0000 (12:27 -0700)]
Document the one TyKind that isn't documented

This is especially confusing since the name `Foreign`
and the name `extern type` are so different. I deduced
that they're the same by consulting git-blame.

5 years agolibrustc_errors => 2018
Taiki Endo [Wed, 6 Feb 2019 18:53:01 +0000 (03:53 +0900)]
librustc_errors => 2018

5 years agolibrustc_llvm => 2018
Taiki Endo [Wed, 6 Feb 2019 18:46:54 +0000 (03:46 +0900)]
librustc_llvm => 2018

5 years agolibrustc_apfloat => 2018
Taiki Endo [Wed, 6 Feb 2019 18:04:35 +0000 (03:04 +0900)]
librustc_apfloat => 2018

5 years agolibsyntax => 2018
Taiki Endo [Wed, 6 Feb 2019 17:33:01 +0000 (02:33 +0900)]
libsyntax => 2018

5 years agoFix broken grammar in iter::from_fn() docs
Sebastian Dröge [Wed, 6 Feb 2019 17:24:20 +0000 (19:24 +0200)]
Fix broken grammar in iter::from_fn() docs

5 years agolibrustc_resolve => 2018
Taiki Endo [Wed, 6 Feb 2019 17:15:23 +0000 (02:15 +0900)]
librustc_resolve => 2018

5 years agolibrustc_plugin => 2018
Taiki Endo [Wed, 6 Feb 2019 14:56:39 +0000 (23:56 +0900)]
librustc_plugin => 2018

5 years agolibrustc_fs_util => 2018
Taiki Endo [Wed, 6 Feb 2019 14:18:33 +0000 (23:18 +0900)]
librustc_fs_util => 2018

5 years agoRevert "Auto merge of #57975 - alexcrichton:debug-exit-appveyor, r=pietroalbini"
Pietro Albini [Wed, 6 Feb 2019 14:17:15 +0000 (15:17 +0100)]
Revert "Auto merge of #57975 - alexcrichton:debug-exit-appveyor, r=pietroalbini"

This reverts commit d3d0bf0e9f4d748b95ed143cc636d159bfcb4a6f, reversing
changes made to 40e6a0bd766ca7b1c582b964131400b8c3e89d76.

5 years agoRevert "Rollup merge of #58162 - pietroalbini:track-259, r=alexcrichton"
Pietro Albini [Wed, 6 Feb 2019 14:16:50 +0000 (15:16 +0100)]
Revert "Rollup merge of #58162 - pietroalbini:track-259, r=alexcrichton"

This reverts commit 4c243e2c3d8f02cdcd22fe68acf6a0b3edca2078, reversing
changes made to 64f0032a3739b18ae45387744340d9c7ce48b145.

5 years agolibrustc_lsan => 2018
Taiki Endo [Wed, 6 Feb 2019 14:12:47 +0000 (23:12 +0900)]
librustc_lsan => 2018

5 years agolibprofiler_builtins => 2018
Taiki Endo [Wed, 6 Feb 2019 13:46:01 +0000 (22:46 +0900)]
libprofiler_builtins => 2018

5 years agolibrustc_asan => 2018
Taiki Endo [Wed, 6 Feb 2019 13:40:09 +0000 (22:40 +0900)]
librustc_asan => 2018

5 years agolibrustc_msan => 2018
Taiki Endo [Wed, 6 Feb 2019 13:36:25 +0000 (22:36 +0900)]
librustc_msan => 2018

5 years agolibrustc_tsan => 2018
Taiki Endo [Wed, 6 Feb 2019 13:28:47 +0000 (22:28 +0900)]
librustc_tsan => 2018

5 years agoAdd embedded book to test such that checktools works
Mark Rousskov [Wed, 6 Feb 2019 10:13:06 +0000 (11:13 +0100)]
Add embedded book to test such that checktools works

5 years agoAuto merge of #56123 - oli-obk:import_miri_from_future, r=eddyb
bors [Wed, 6 Feb 2019 08:42:46 +0000 (08:42 +0000)]
Auto merge of #56123 - oli-obk:import_miri_from_future, r=eddyb

Add a forever unstable opt-out of const qualification checks

r? @eddyb

cc @RalfJung @Centril

basically a forever unstable way to screw with const things in horribly unsafe, unsound and incoherent ways.

Note that this does *not* affect miri except by maybe violating assumptions that miri makes. But there's no change in how miri evaluates things.

5 years agoMake an assert debug-only in `find_constraint_paths_between_regions`.
Nicholas Nethercote [Wed, 6 Feb 2019 07:02:32 +0000 (18:02 +1100)]
Make an assert debug-only in `find_constraint_paths_between_regions`.

This reduces instruction counts for NLL builds of `wg-grammar` by over
20%.

5 years agoAuto merge of #58061 - nnethercote:overhaul-syntax-Folder, r=petrochenkov
bors [Wed, 6 Feb 2019 06:01:37 +0000 (06:01 +0000)]
Auto merge of #58061 - nnethercote:overhaul-syntax-Folder, r=petrochenkov

Overhaul `syntax::fold::Folder`.

This PR changes `syntax::fold::Folder` from a functional style
(where most methods take a `T` and produce a new `T`) to a more
imperative style (where most methods take and modify a `&mut T`), and
renames it `syntax::mut_visit::MutVisitor`.

This makes the code faster and more concise.

5 years agoAuto merge of #58058 - QuietMisdreavus:use-attr, r=GuillaumeGomez
bors [Wed, 6 Feb 2019 03:07:04 +0000 (03:07 +0000)]
Auto merge of #58058 - QuietMisdreavus:use-attr, r=GuillaumeGomez

rustdoc: don't try to get a DefId for a Def that doesn't have one

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

The compiler allows you to write a `use` statement for a built-in non-macro attribute, since `use proc_macro` can apply to both the `proc_macro` crate and the `#[proc_macro]` attribute. However, if you write a use statement for something that *doesn't* have this crossover, rustdoc will try to use it the same way as anything else... which resulted in an ICE because it tried to pull a DefId for something that didn't have one. This PR makes rustdoc skip those lookups when it encounters them, allowing it to properly process and render these imports.

5 years agoRename `fold.rs` as `mut_visit.rs`.
Nicholas Nethercote [Tue, 5 Feb 2019 22:10:05 +0000 (09:10 +1100)]
Rename `fold.rs` as `mut_visit.rs`.

5 years agoAuto merge of #58131 - ehuss:update-cargo, r=alexcrichton
bors [Tue, 5 Feb 2019 22:08:47 +0000 (22:08 +0000)]
Auto merge of #58131 - ehuss:update-cargo, r=alexcrichton

Update cargo

7 commits in 245818076052dd7178f5bb7585f5aec5b6c1e03e..4e74e2fc0908524d17735c768067117d3e84ee9c
2019-01-27 15:17:26 +0000 to 2019-02-02 17:48:44 +0000
- Fix overlapping progress with stdout. (rust-lang/cargo#6618)
- Improve progress bar flickering. (rust-lang/cargo#6615)
- Add detail to multiple rename deps (rust-lang/cargo#6603)
- Fix race condition in local registry crate unpacking (rust-lang/cargo#6591)
- Revert "Make incremental compilation the default for all profiles." (rust-lang/cargo#6610)
- Fixup the docs on crate-type (rust-lang/cargo#6606)
- Document that owner --add now just invites (rust-lang/cargo#6604)

5 years agoOverhaul `syntax::fold::Folder`.
Nicholas Nethercote [Tue, 5 Feb 2019 04:20:55 +0000 (15:20 +1100)]
Overhaul `syntax::fold::Folder`.

This commit changes `syntax::fold::Folder` from a functional style
(where most methods take a `T` and produce a new `T`) to a more
imperative style (where most methods take and modify a `&mut T`), and
renames it `syntax::mut_visit::MutVisitor`.

The first benefit is speed. The functional style does not require any
reallocations, due to the use of `P::map` and
`MoveMap::move_{,flat_}map`. However, every field in the AST must be
overwritten; even those fields that are unchanged are overwritten with
the same value. This causes a lot of unnecessary memory writes. The
imperative style reduces instruction counts by 1--3% across a wide range
of workloads, particularly incremental workloads.

The second benefit is conciseness; the imperative style is usually more
concise. E.g. compare the old functional style:
```
fn fold_abc(&mut self, abc: ABC) {
    ABC {
        a: fold_a(abc.a),
        b: fold_b(abc.b),
        c: abc.c,
    }
}
```
with the imperative style:
```
fn visit_abc(&mut self, ABC { a, b, c: _ }: &mut ABC) {
    visit_a(a);
    visit_b(b);
}
```
(The reductions get larger in more complex examples.)

Overall, the patch removes over 200 lines of code -- even though the new
code has more comments -- and a lot of the remaining lines have fewer
characters.

Some notes:

- The old style used methods called `fold_*`. The new style mostly uses
  methods called `visit_*`, but there are a few methods that map a `T`
  to something other than a `T`, which are called `flat_map_*` (`T` maps
  to multiple `T`s) or `filter_map_*` (`T` maps to 0 or 1 `T`s).

- `move_map.rs`/`MoveMap`/`move_map`/`move_flat_map` are renamed
  `map_in_place.rs`/`MapInPlace`/`map_in_place`/`flat_map_in_place` to
  reflect their slightly changed signatures.

- Although this commit renames the `fold` module as `mut_visit`, it
  keeps it in the `fold.rs` file, so as not to confuse git. The next
  commit will rename the file.

5 years agoDo not ICE in codegen given a extern_type static
Dan Robertson [Tue, 5 Feb 2019 15:52:54 +0000 (15:52 +0000)]
Do not ICE in codegen given a extern_type static

The layout of a extern_type static is unsized, but may pass the
Well-Formed check in typeck. As a result, we cannot assume that
a static is sized when generating the `Place` for an r-value.

5 years agoUpdate cargo
Eric Huss [Sun, 3 Feb 2019 22:42:29 +0000 (14:42 -0800)]
Update cargo