123337 Commits

Author SHA1 Message Date
Bastian Kauschke
805c44d5d3 cleanup 2020-07-15 12:58:33 +02:00
Bastian Kauschke
a7fe4df04a update promoted_mir 2020-07-15 12:58:33 +02:00
Bastian Kauschke
ae80d7e012 update const arg queries 2020-07-15 12:58:33 +02:00
Bastian Kauschke
08394eb121 update test 2020-07-15 12:58:32 +02:00
Bastian Kauschke
29b5844c2d only call typeck_tables_of_const_arg for const args 2020-07-15 12:58:32 +02:00
Bastian Kauschke
9df03ccf62 mir opt cross compile 2020-07-15 12:58:32 +02:00
Bastian Kauschke
d4cb820528 mir_built is a lie 2020-07-15 12:58:32 +02:00
Bastian Kauschke
aa02692570 decode stuff 2020-07-15 12:58:32 +02:00
Bastian Kauschke
050acc0213 ui test diff 2020-07-15 12:58:32 +02:00
Bastian Kauschke
4ef1029f5c mir opt diff 2020-07-15 12:58:32 +02:00
Bastian Kauschke
48bbf49765 const generics work! 2020-07-15 12:58:32 +02:00
Bastian Kauschke
b615b98f33 continue mir pipeline 2020-07-15 12:58:32 +02:00
Bastian Kauschke
316128c38a optimized_mir 2020-07-15 12:58:32 +02:00
Bastian Kauschke
a8419099d1 InstanceDef::Item 2020-07-15 12:58:32 +02:00
Bastian Kauschke
178c6507f6 typeck all the tables 2020-07-15 12:58:32 +02:00
Bastian Kauschke
2e6bf0923b const_eval_resolve 2020-07-15 12:58:32 +02:00
Bastian Kauschke
58031c7cb2 ConstKind::Unevaluated 2020-07-15 12:58:32 +02:00
Bastian Kauschke
08865d94e5 begin using WithOptParam 2020-07-15 12:58:32 +02:00
Bastian Kauschke
37a6103e1a introduce the query opt_const_param_of 2020-07-15 12:58:32 +02:00
Bastian Kauschke
2111d6f276 add const generic tests 2020-07-15 12:58:32 +02:00
bors
567ad7455d Auto merge of #74175 - nnethercote:more-static-symbols, r=oli-obk
More static symbols

These commits add some more static symbols and convert lots of places to use them.

r? @oli-obk
2020-07-15 00:16:25 +00:00
Nicholas Nethercote
5930081f34 Remove lots of Symbol::as_str() calls.
In various ways, such as changing functions to take a `Symbol` instead
of a `&str`.
2020-07-15 09:01:35 +10:00
Nicholas Nethercote
f04e866e57 Add and use more static symbols.
Note that the output of `unpretty-debug.stdout` has changed. In that
test the hash values are normalized from a symbol numbers to small
numbers like "0#0" and "0#1". The increase in the number of static
symbols must have caused the original numbers to contain more digits,
resulting in different pretty-printing prior to normalization.
2020-07-15 08:42:59 +10:00
Nicholas Nethercote
e284f5d050 Fix the ordering of the static symbols. 2020-07-15 08:42:59 +10:00
Nicholas Nethercote
026089bdb5 Rename sym::nontrapping_fptoint. 2020-07-15 08:42:59 +10:00
bors
23744c84d9 Auto merge of #74342 - Manishearth:rollup-l63pesj, r=Manishearth
Rollup of 11 pull requests

Successful merges:

 - #73759 (Add missing Stdin and StdinLock examples)
 - #74211 (Structured suggestion when not using struct pattern)
 - #74228 (Provide structured suggestion on unsized fields and fn params)
 - #74252 (Don't allow `DESTDIR` to influence LLVM builds)
 - #74263 (Slight reorganization of sys/(fast_)thread_local)
 - #74271 (process_unix: prefer i32::*_be_bytes over manually shifting bytes)
 - #74272 (pprust: support multiline comments within lines)
 - #74332 (Update cargo)
 - #74334 (bootstrap: Improve wording on docs for `verbose-tests`)
 - #74336 (typeck: use `item_name` in cross-crate packed diag)
 - #74340 (lint: use `transparent_newtype_field` to avoid ICE)

Failed merges:

r? @ghost
2020-07-14 20:19:59 +00:00
Manish Goregaokar
dbe7ed33cd
Rollup merge of #74340 - davidtwco:issue-73747-improper-ctypes-defns-is-zst-with-params, r=pnkfelix
lint: use `transparent_newtype_field` to avoid ICE

Fixes #73747.

This PR re-uses the `transparent_newtype_field` function instead of manually calling `is_zst` on normalized fields to determine which field in a transparent type is the non-zero-sized field, thus avoiding an ICE.
2020-07-14 13:19:39 -07:00
Manish Goregaokar
c4fcf5a7a4
Rollup merge of #74336 - davidtwco:issue-73112-cross-crate-packed-type-diagnostic, r=estebank
typeck: use `item_name` in cross-crate packed diag

Fixes #73112.

This PR replaces the use of `expect_local` and `hir().get` to fetch the identifier for a ADT with `item_name` - which works across crates.
2020-07-14 13:19:37 -07:00
Manish Goregaokar
aedb7c37b8
Rollup merge of #74334 - jyn514:config-toml-docs, r=spastorino
bootstrap: Improve wording on docs for `verbose-tests`

From https://github.com/rust-lang/rustc-dev-guide/pull/795#discussion_r454392291

r? @spastorino
2020-07-14 13:19:35 -07:00
Manish Goregaokar
1cd8c5e4ee
Rollup merge of #74332 - ehuss:update-cargo, r=ehuss
Update cargo

4 commits in 4f74d9b2a771c58b7ef4906b2668afd075bc8081..43cf77395cad5b79887b20b7cf19d418bbd703a9
2020-07-08 17:13:00 +0000 to 2020-07-13 17:35:42 +0000
- fix: add space to comments (rust-lang/cargo#8476)
- Allow configuring unstable flags via config file (rust-lang/cargo#8393)
- Add support for rustc's `-Z terminal-width`. (rust-lang/cargo#8427)
- Avoid colliding with older Cargo fingerprint changes (rust-lang/cargo#8473)
2020-07-14 13:19:33 -07:00
Manish Goregaokar
92e90f943c
Rollup merge of #74272 - davidtwco:issue-73626-multiline-mixed-comments, r=Mark-Simulacrum
pprust: support multiline comments within lines

Fixes #73626.

This PR adds support to `rustc_ast_pretty` for multiline comments that start and end within a line of source code.

Fun fact: [the commit which added this assert](d12ea39896) was from 2011!
d12ea39896/src/comp/pretty/pprust.rs (L1146-L1150)
2020-07-14 13:19:32 -07:00
Manish Goregaokar
7b1247c34f
Rollup merge of #74271 - lzutao:cmdbytes, r=LukasKalbertodt
process_unix: prefer i32::*_be_bytes over manually shifting bytes

This PR makes it more clear about the intend of the code.
2020-07-14 13:19:30 -07:00
Manish Goregaokar
fadd91c630
Rollup merge of #74263 - RalfJung:thread-local, r=Mark-Simulacrum
Slight reorganization of sys/(fast_)thread_local

I was long confused by the `thread_local` and `fast_thread_local` modules in the `sys(_common)` part of libstd. The names make it *sound* like `fast_thread_local` is just a faster version of `thread_local`, but really these are totally different APIs: one provides thread-local "keys", which are non-addressable pointer-sized pieces of local storage with an associated destructor; the other (the "fast" one) provides just a destructor.

So I propose we rename `fast_thread_local` to `thread_local_dtor`, and `thread_local` to `thread_local_key`. That's what this PR does.
2020-07-14 13:19:28 -07:00
Manish Goregaokar
1e74f28599
Rollup merge of #74252 - shepmaster:bootstrap-rust-destdir, r=Mark-Simulacrum
Don't allow `DESTDIR` to influence LLVM builds

When running a command like `DESTDIR=foo x.py install` in a completely
clean build directory, this will cause LLVM to be installed into
`DESTDIR`, which then causes the build to fail later when it attempts
to *use* those LLVM files.
2020-07-14 13:19:26 -07:00
Manish Goregaokar
a364c0a782
Rollup merge of #74228 - estebank:unsized-param, r=davidtwco
Provide structured suggestion on unsized fields and fn params

* Suggest borrowing or boxing unsized fields
* Suggest borrowing fn parameters
* Remove some verbosity of unsized errors
* Remove `on_unimplemented` note from `trait Sized`

Fix #23286, fix #28653.

r? @davidtwco
2020-07-14 13:19:24 -07:00
Manish Goregaokar
be5c7abfd6
Rollup merge of #74211 - estebank:struct-pat-as-unit, r=petrochenkov
Structured suggestion when not using struct pattern

r? @petrochenkov
2020-07-14 13:19:22 -07:00
Manish Goregaokar
353df59893
Rollup merge of #73759 - GuillaumeGomez:stdin-examples, r=Dylan-DPC
Add missing Stdin and StdinLock examples

r? @Dylan-DPC
2020-07-14 13:19:20 -07:00
Esteban Küber
ff75395ca8 Reword message 2020-07-14 12:19:50 -07:00
Esteban Küber
c38b127d84 Remove redundant explanatory note for type parameters 2020-07-14 12:19:44 -07:00
David Wood
cccc3109ff
lint: use transparent_newtype_field to avoid ICE
This commit re-uses the `transparent_newtype_field` function instead of
manually calling `is_zst` on normalized fields to determine which field
in a transparent type is the non-zero-sized field, thus avoiding an ICE.

Signed-off-by: David Wood <david@davidtw.co>
2020-07-14 19:26:34 +01:00
Esteban Küber
d989796b47 Suggest borrowing in more unsized fn param cases 2020-07-14 10:50:24 -07:00
Esteban Küber
b7db6bb5af Remove Sized on_unimplemented note 2020-07-14 10:50:24 -07:00
Esteban Küber
28e6f1f5b9 Suggest boxing or borrowing unsized fields 2020-07-14 10:50:24 -07:00
Esteban Küber
a15bda4036 Point at type on E0275 instead of whole field 2020-07-14 10:50:24 -07:00
Esteban Küber
c88409de13 Suggest borrowing unsized argument types 2020-07-14 10:50:24 -07:00
Esteban Küber
04298204ed Suggest struct pat on incorrect unit or tuple pat
When encountering a unit or tuple pattern for a struct-like item, suggest
using the correct pattern.

Use `insert_field_names_local` when evaluating variants and store field
names even when the list is empty in order to produce accurate
structured suggestions.
2020-07-14 10:41:44 -07:00
bors
2002ebacfb Auto merge of #74330 - Manishearth:rollup-mrc09pb, r=Manishearth
Rollup of 15 pull requests

Successful merges:

 - #71237 (Add Ayu theme to rustdoc)
 - #73720 (Clean up E0704 error explanation)
 - #73866 (Obviate #[allow(improper_ctypes_definitions)])
 - #73965 (typeck: check for infer before type impls trait)
 - #73986 (add (unchecked) indexing methods to raw (and NonNull) slices)
 - #74173 (Detect tuple struct incorrectly used as struct pat)
 - #74220 (Refactor Windows `parse_prefix`)
 - #74227 (Remove an unwrap in layout computation)
 - #74239 (Update llvm-project to latest origin/rustc/10.0-2020-05-05 commit )
 - #74257 (don't mark linux kernel module targets as a unix environment)
 - #74270 (typeck: report placeholder type error w/out span)
 - #74296 (Clarify the description for rfind)
 - #74310 (Use `ArrayVec` in `SparseBitSet`.)
 - #74316 (Remove unnecessary type hints from Wake internals)
 - #74324 (Update Clippy)

Failed merges:

r? @ghost
2020-07-14 17:11:02 +00:00
David Wood
d9485be595
typeck: use item_name in cross-crate packed diag
This commit replaces the use of `expect_local` and `hir().get` to fetch
the identifier for a ADT with `item_name` - which works across crates.

Signed-off-by: David Wood <david@davidtw.co>
2020-07-14 16:28:11 +01:00
Joshua Nelson
ba661d829d bootstrap: Improve wording on docs for verbose-tests 2020-07-14 11:11:24 -04:00
Eric Huss
4c9e67a7d7 Update cargo 2020-07-14 07:50:18 -07:00