Commit Graph

89738 Commits

Author SHA1 Message Date
varkor
11874a0c14 Validate generic parameter and argument order in ast_validation
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:17 +01:00
varkor
2fec52bf58 Add lowering errors for const generics
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:17 +01:00
varkor
29f7206366 Add const params to Def
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:17 +01:00
varkor
ea0d99829d Add resolution errors for const generics
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:17 +01:00
varkor
b4ef753e8f Add pretty-printing for const generics
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:16 +01:00
varkor
d7695abb76 Support const generics in derive
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:16 +01:00
varkor
0a8d98a270 Parse const generics
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:16 +01:00
varkor
8d83521f0b Add const_generics feature flag
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:16 +01:00
varkor
751dcdf606 Add Const kind to AST
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-02-07 15:02:16 +01:00
Nick Fitzgerald
e633f15239 Un-monomorphize and inline formatting with padding
The generic `F` in `with_padding` was causing a bunch of stuff to get inlined
that otherwise needn't be, blowing up code size.
2019-02-07 15:01:30 +01:00
Esteban Küber
9e934e2215 Reweork incompatible match arms error
- Point at the body expression of the match arm with the type error.
- Point at the prior match arms explicitely stating the evaluated type.
- Point at the entire match expr in a secondary span, instead of primary.
- For type errors in the first match arm, the cause is outside of the
  match, treat as implicit block error to give a more appropriate error.
2019-02-07 05:39:54 -08:00
Guillaume Gomez
761caa2334
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
2019-02-07 14:28:41 +01:00
Guillaume Gomez
da8da5e061
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
2019-02-07 14:28:40 +01:00
Guillaume Gomez
064b787fc9
Rollup merge of #58146 - GuillaumeGomez:dont-collapse-everything, r=QuietMisdreavus
Prevent automatic collapse of methods impl blocks

Fixes #57582.

r? @QuietMisdreavus
2019-02-07 14:28:38 +01:00
Guillaume Gomez
2c9f1f5750
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
2019-02-07 14:28:37 +01:00
Guillaume Gomez
f22c445053
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
2019-02-07 14:28:36 +01:00
Guillaume Gomez
f61a4f86db
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
2019-02-07 14:28:34 +01:00
Guillaume Gomez
1a99a32bd7
Rollup merge of #58028 - GuillaumeGomez:fix-settings-image-link, r=QuietMisdreavus
Fix image link in the settings menu

Fixes #57892.

r? @QuietMisdreavus
2019-02-07 14:28:33 +01:00
Guillaume Gomez
bb9d66d3ba
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
2019-02-07 14:28:32 +01:00
Guillaume Gomez
4c62d7e6f1
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
2019-02-07 14:28:30 +01:00
Guillaume Gomez
2f2d61a0f8
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.
2019-02-07 14:28:29 +01:00
Guillaume Gomez
55c0922201
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
2019-02-07 14:28:27 +01:00
Wesley Wiser
584081af4a Calculate self-times not total times 2019-02-07 14:15:57 +01:00
Wesley Wiser
a568e7e47b Add #[inline] annotations 2019-02-07 14:15:57 +01:00
Wesley Wiser
5bb96edbb2 Implement more detailed self profiling
Timing data and cache hits/misses are now recorded at the query level.
This allows us to show detailed per query information such as total time
for each query.

To see detailed query information in the summary pass the `-Z verbose`
flag. For example:

```
rustc -Z self-profile -Z verbose hello_world.rs
```
2019-02-07 14:15:54 +01:00
Nick Fitzgerald
ed2157a38f De-duplicate write_prefix lambda in pad_integral
For smaller code size.
2019-02-07 13:02:27 +01:00
Nick Fitzgerald
da5a0cd69c De-duplicate number formatting implementations for smaller code size
Instead of inlining the same logic into every number formatting implementation,
pull it out into a function that each of the number formatting impls call into.
2019-02-07 12:33:27 +01:00
Guillaume Gomez
729e37da4d Don't apply impl block collapse rules to trait impls 2019-02-07 11:48:31 +01:00
Taiki Endo
1d05f81d19 Add #[must_use] message to Fn* traits 2019-02-07 19:44:06 +09:00
Guillaume Gomez
8b886e07f5 Remove images' url to make it work even without internet connection 2019-02-07 11:06:19 +01:00
bors
ad433894ab 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
2019-02-07 09:49:08 +00:00
Esteban Küber
6e62129b36 add doc comment and revert angle bracket change 2019-02-07 01:42:54 -08:00
Esteban Küber
336c48cc7b tweak wording based on in person feedback 2019-02-07 01:42:54 -08:00
Esteban Küber
cba96613de fix test 2019-02-07 01:42:54 -08:00
Esteban Küber
c086bafc8f Update test output after rebase 2019-02-07 01:42:54 -08:00
Esteban Küber
80c0b326d6 Remove unused match 2019-02-07 01:42:54 -08:00
Esteban Küber
60459429c5 Add missing trailing newline 2019-02-07 01:42:54 -08:00
Esteban Küber
1495d30448 Remove spurious complaint about missing expression for bare semicolons 2019-02-07 01:42:54 -08:00
Esteban Küber
99be87aac3 unify error handling to single method 2019-02-07 01:42:54 -08:00
Esteban Küber
7451cd8dc0 Deduplicate mismatched delimiter errors
Delay unmatched delimiter errors until after the parser has run to
deduplicate them when parsing and attempt recovering intelligently.
2019-02-07 01:41:30 -08:00
bors
626e74d5f6 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
2019-02-07 07:11:22 +00:00
Matthias Einwag
a1c4cf6889 Change RawWaker constructor to const fn 2019-02-06 22:56:33 -08:00
kennytm
000daf948a
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.
2019-02-07 13:58:02 +08:00
kennytm
5489d0dad1
Rollup merge of #58241 - taiki-e:librustc_llvm-2018, r=Centril
librustc_llvm => 2018

Transitions `librustc_llvm` to Rust 2018; cc #58099

r? @Centril
2019-02-07 13:58:01 +08:00
kennytm
207290d98e
Rollup merge of #58240 - taiki-e:librustc_errors-2018, r=Centril
librustc_errors => 2018

Transitions `librustc_errors` to Rust 2018; cc #58099

r? @Centril
2019-02-07 13:58:00 +08:00
kennytm
5007287a5b
Rollup merge of #58239 - taiki-e:librustc_apfloat-2018, r=Centril
librustc_apfloat => 2018

Transitions `librustc_apfloat` to Rust 2018; cc #58099

r? @Centril
2019-02-07 13:57:59 +08:00
kennytm
9b28322460
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
2019-02-07 13:57:57 +08:00
kennytm
86c761f3e9
Rollup merge of #58236 - taiki-e:librustc_resolve-2018, r=Centril
librustc_resolve => 2018

Transitions `librustc_resolve` to Rust 2018; cc #58099

r? @Centril
2019-02-07 13:57:56 +08:00
kennytm
73458cd1ad
Rollup merge of #58228 - taiki-e:librustc_plugin-2018, r=Centril
librustc_plugin => 2018

Transitions `librustc_plugin` to Rust 2018; cc #58099

r? @Centril
2019-02-07 13:57:55 +08:00
kennytm
c0a135f541
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
2019-02-07 13:57:54 +08:00