Guillaume Gomez
585f9a7acc
Rollup merge of #58350 - petrochenkov:embed, r=frewsxcv
...
Fix failing tidy (line endings on Windows)
Updates to `embedded-book` including https://github.com/rust-embedded/book/pull/127 .
2019-02-10 21:45:25 +01:00
Guillaume Gomez
9ccfb74a8a
Rollup merge of #58346 - RalfJung:rpath-pop, r=Mark-Simulacrum
...
rpath computation: explain why we pop()
I was quite confused by this code until I got a debug log of what is going on.
2019-02-10 21:45:24 +01:00
Guillaume Gomez
53e9a654e1
Rollup merge of #58345 - RalfJung:2nd-filename, r=matthewjasper
...
When there are multiple filenames, print what got interpreted as filenames
I have written code that crafts command lines for rustc, and when I get "multiple input filenames provided" it can be quite hard to figure out where in this long list of arguments the mistake is hiding. Probably I passed an argument to a flag that does not expect an argument, but which flag would that be?
This changes the error message to print the first two filenames, to make it easier to debug what is going on.
2019-02-10 21:45:22 +01:00
Guillaume Gomez
c3aa84700a
Rollup merge of #58332 - RalfJung:miri-copy-nonoverlapping, r=oli-obk
...
operand-to-place copies should never be overlapping
This seems to just work (verified with the Miri test suite).
r? @oli-obk
2019-02-10 21:45:21 +01:00
Guillaume Gomez
a09aa0fde1
Rollup merge of #58324 - RalfJung:fn-ptr-eq, r=oli-obk
...
miri: give non-generic functions a stable address
This makes Miri correctly handle format string parameters despite https://github.com/rust-lang/rust/issues/58320 .
Matching Miri PR: https://github.com/solson/miri/pull/626
r? @oli-obk
2019-02-10 21:45:20 +01:00
Guillaume Gomez
f4e7bc50a0
Rollup merge of #58317 - hayekr:patch-1, r=frewsxcv
...
Some writing improvement, conciseness of intro
Made unstable-features doc more concise in the introduction paragraph
2019-02-10 21:45:19 +01:00
Guillaume Gomez
d5a8b247be
Rollup merge of #58297 - GuillaumeGomez:cleanup-js, r=QuietMisdreavus
...
Cleanup JS a bit
r? @QuietMisdreavus
2019-02-10 21:45:18 +01:00
Guillaume Gomez
d59ca59b90
Rollup merge of #58295 - RalfJung:stdio, r=alexcrichton
...
std::sys::unix::stdio: explain why we do into_raw
I was quite puzzled why someone would call `into_raw` and then ignore the result.
2019-02-10 21:45:16 +01:00
Guillaume Gomez
112629b921
Rollup merge of #58262 - taiki-e:must_use, r=estebank
...
Add #[must_use] message to Fn* traits
This PR adds `#[must_use]` message to `Fn*` traits.
Related: #57549
r? @estebank
2019-02-10 21:45:15 +01:00
Guillaume Gomez
adf516b94e
Rollup merge of #58243 - GuillaumeGomez:trait-alias-docs, r=Manishearth
...
Add trait alias support in rustdoc
Fixes #57595 .
r? @QuietMisdreavus
2019-02-10 21:45:13 +01:00
Guillaume Gomez
cdbd07cc40
Rollup merge of #58203 - euclio:rustdoc-async, r=GuillaumeGomez
...
rustdoc: display sugared return types for async functions
Fixes #58027 .
2019-02-10 21:45:12 +01:00
Guillaume Gomez
a74e4f7fd5
Rollup merge of #58157 - h-michael:cargo-lock, r=alexcrichton
...
Add Cargo.lock automatically adding message
If I execute `cargo +nightly fix`, this change always occurs; cc #58099
r? @Centril
2019-02-10 21:45:11 +01:00
Guillaume Gomez
82e051b6ce
Rollup merge of #57926 - icefoxen:test-doc-pr, r=frewsxcv
...
Tiny expansion to docs for `core::convert`.
This is not really significant, accept or reject as you wish. I just want to make sure I understand how the PR process works and that I'm doing it right before doing a bigger one for #33417 .
2019-02-10 21:45:09 +01:00
Guillaume Gomez
d9f9780918
Rollup merge of #57740 - JakubOnderka:ipv4addr-to_ne_bytes, r=scottmcm
...
Use `to_ne_bytes` for converting IPv4Addr to octets
It is easier and it should be also faster, because [`to_ne_bytes`](https://doc.rust-lang.org/std/primitive.u32.html#method.to_ne_bytes ) just calls `mem::transmute`.
2019-02-10 21:45:08 +01:00
Guillaume Gomez
e917f8b531
Rollup merge of #57259 - king6cong:master, r=alexcrichton
...
Update reference of rlibc crate to compiler-builtins crate
None
2019-02-10 21:45:07 +01:00
bors
0b7af2668a
Auto merge of #58129 - RalfJung:maybe-uninit, r=cramertj
...
MaybeUninit: some docs, rename into_inner -> into_initialized, return &mut from set
2019-02-10 20:03:03 +00:00
Ralf Jung
4833074a9a
fix SGX build failures
2019-02-10 19:08:49 +01:00
Pietro Albini
998e584522
bump cargo submodule
2019-02-10 18:36:00 +01:00
Taiki Endo
6156defd51
librustc_mir: use ? in impl_snapshot_for! macro
2019-02-11 02:24:46 +09:00
Matthew Jasper
d7afd3ebfb
Add test for MIR printing changes
2019-02-10 17:24:18 +00:00
Guillaume Gomez
b1d82ac6ed
Remove spotlight for trait aliases and fix nits
2019-02-10 16:56:21 +01:00
Matthew Jasper
18089df7e8
Fix ICE and invalid filenames in MIR printing code
2019-02-10 15:44:24 +00:00
Ralf Jung
4853ce660e
it is okay not to use into_inner
2019-02-10 15:35:47 +01:00
bors
c3d2490433
Auto merge of #58151 - ljedrz:HirIdify_rustc, r=Zoxc
...
Partially HirId-ify rustc
Another step towards https://github.com/rust-lang/rust/pull/57578 .
2019-02-10 14:30:37 +00:00
Ralf Jung
eaf81c2e3e
miri value visitor: use in macro
2019-02-10 15:16:25 +01:00
Guillaume Gomez
c20357a62a
Add trait aliases to js types
2019-02-10 14:49:20 +01:00
Guillaume Gomez
29354ddc15
Add style for trait aliases
2019-02-10 14:49:20 +01:00
Guillaume Gomez
74e97f3381
Add trait alias support in rustdoc
2019-02-10 14:49:20 +01:00
Vadim Petrochenkov
55f90c77e8
Fix failing tidy (line endings on Windows)
2019-02-10 16:21:47 +03:00
Ralf Jung
adb33008f7
rpath computation: explain why we pop()
2019-02-10 13:05:43 +01:00
Ralf Jung
3a3691f187
when there are multiple filenames, print what got interpreted as 2nd filename
2019-02-10 13:01:09 +01:00
bors
68650cacf2
Auto merge of #58085 - wesleywiser:profiler_2, r=wesleywiser
...
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
```
results in something like:
```md
Self profiling results:
| Phase | Time (ms) | Time (%) | Queries | Hits (%)
| ----------------------------------------- | -------------- | -------- | -------------- | --------
| Other | 177 | 54.97 | 8094 | 45.47
| - {time spent not running queries} | 113 | 35.09 | 0 | 0.00
| - const_eval | 16 | 4.97 | 26 | 11.54
| - type_of | 9 | 2.80 | 627 | 27.75
| - const_eval_raw | 8 | 2.48 | 22 | 0.00
| - adt_def | 7 | 2.17 | 381 | 11.55
| - visible_parent_map | 7 | 2.17 | 99 | 98.99
| - item_attrs | 6 | 1.86 | 698 | 50.14
| - item_children | 5 | 1.55 | 2815 | 0.00
| - adt_dtorck_constraint | 4 | 1.24 | 2 | 0.00
| - adt_destructor | 2 | 0.62 | 15 | 86.67
| TypeChecking | 53 | 16.46 | 2834 | 79.89
| - trait_impls_of | 9 | 2.80 | 65 | 86.15
| - evaluate_obligation | 7 | 2.17 | 80 | 2.50
| - const_is_rvalue_promotable_to_static | 6 | 1.86 | 1 | 0.00
| - is_copy_raw | 6 | 1.86 | 29 | 58.62
| - rvalue_promotable_map | 6 | 1.86 | 2 | 50.00
| - {time spent not running queries} | 6 | 1.86 | 0 | 0.00
| - typeck_item_bodies | 5 | 1.55 | 1 | 0.00
| - typeck_tables_of | 5 | 1.55 | 19 | 94.74
| - dropck_outlives | 2 | 0.62 | 1 | 0.00
| - layout_raw | 1 | 0.31 | 668 | 87.87
| Linking | 48 | 14.91 | 43 | 46.51
| - {time spent not running queries} | 48 | 14.91 | 0 | 0.00
| Codegen | 29 | 9.01 | 420 | 61.90
| - {time spent not running queries} | 16 | 4.97 | 0 | 0.00
| - collect_and_partition_mono_items | 11 | 3.42 | 13 | 92.31
| - mir_const | 1 | 0.31 | 1 | 0.00
| - mir_validated | 1 | 0.31 | 3 | 66.67
| Expansion | 14 | 4.35 | 0 | 0.00
| - {time spent not running queries} | 14 | 4.35 | 0 | 0.00
| BorrowChecking | 1 | 0.31 | 12 | 41.67
| - borrowck | 1 | 0.31 | 2 | 50.00
| Parsing | 0 | 0.00 | 0 | 0.00
Optimization level: No
Incremental: off
```
<details>
<summary>Rendered</summary>
Self profiling results:
| Phase | Time (ms) | Time (%) | Queries | Hits (%)
| ----------------------------------------- | -------------- | -------- | -------------- | --------
| **Other** | **177** | **54.97** | **8094** | **45.47**
| - {time spent not running queries} | 113 | 35.09 | 0 | 0.00
| - const_eval | 16 | 4.97 | 26 | 11.54
| - type_of | 9 | 2.80 | 627 | 27.75
| - const_eval_raw | 8 | 2.48 | 22 | 0.00
| - adt_def | 7 | 2.17 | 381 | 11.55
| - visible_parent_map | 7 | 2.17 | 99 | 98.99
| - item_attrs | 6 | 1.86 | 698 | 50.14
| - item_children | 5 | 1.55 | 2815 | 0.00
| - adt_dtorck_constraint | 4 | 1.24 | 2 | 0.00
| - adt_destructor | 2 | 0.62 | 15 | 86.67
| TypeChecking | 53 | 16.46 | 2834 | 79.89
| - trait_impls_of | 9 | 2.80 | 65 | 86.15
| - evaluate_obligation | 7 | 2.17 | 80 | 2.50
| - const_is_rvalue_promotable_to_static | 6 | 1.86 | 1 | 0.00
| - is_copy_raw | 6 | 1.86 | 29 | 58.62
| - rvalue_promotable_map | 6 | 1.86 | 2 | 50.00
| - {time spent not running queries} | 6 | 1.86 | 0 | 0.00
| - typeck_item_bodies | 5 | 1.55 | 1 | 0.00
| - typeck_tables_of | 5 | 1.55 | 19 | 94.74
| - dropck_outlives | 2 | 0.62 | 1 | 0.00
| - layout_raw | 1 | 0.31 | 668 | 87.87
| Linking | 48 | 14.91 | 43 | 46.51
| - {time spent not running queries} | 48 | 14.91 | 0 | 0.00
| Codegen | 29 | 9.01 | 420 | 61.90
| - {time spent not running queries} | 16 | 4.97 | 0 | 0.00
| - collect_and_partition_mono_items | 11 | 3.42 | 13 | 92.31
| - mir_const | 1 | 0.31 | 1 | 0.00
| - mir_validated | 1 | 0.31 | 3 | 66.67
| Expansion | 14 | 4.35 | 0 | 0.00
| - {time spent not running queries} | 14 | 4.35 | 0 | 0.00
| BorrowChecking | 1 | 0.31 | 12 | 41.67
| - borrowck | 1 | 0.31 | 2 | 50.00
| Parsing | 0 | 0.00 | 0 | 0.00
Optimization level: No
Incremental: off
</details>
cc @nikomatsakis @michaelwoerister @Zoxc
Fixes #54141
2019-02-10 11:18:50 +00:00
bors
de111e6367
Auto merge of #58103 - RalfJung:mir-shim-dump, r=eddyb
...
Make -Zdump-mir dump shims
Fixes https://github.com/rust-lang/rust/issues/53532 by (a) making the MIR shim generation use the MIR pass infrastructure, and (b) fixing said infrastructure to handle the fallout.
Cc @eddyb @oli-obk
2019-02-10 08:52:10 +00:00
Taiki Endo
2be0993c4e
Revert removed #![feature(nll)]
2019-02-10 16:13:30 +09:00
bors
2e08bb1dd2
Auto merge of #58339 - Mark-Simulacrum:embedded-book, r=Mark-Simulacrum
...
Add EmbeddedBook to test list in bootstrap
r? @alexcrichton
2019-02-10 04:34:12 +00:00
Mark Rousskov
80942e95ea
Add EmbeddedBook to test list in bootstrap
2019-02-09 19:42:23 -07:00
bors
1bfb44133d
Auto merge of #57770 - Zoxc:no-hash-query, r=michaelwoerister
...
Add a query type which is always marked as red if it runs
This is useful for queries which produce results which are very likely to change if their inputs do.
I also expect this to be useful for end to end queries because 1) we don't need `HashStable` impls and 2) we avoid the overhead of hashing the result of large results like the AST or the HIR map.
r? @michaelwoerister
2019-02-10 01:33:17 +00:00
Guillaume Gomez
69d948d347
Fix search results interactions
2019-02-10 00:37:44 +01:00
bors
abcfc3b762
Auto merge of #58065 - alexreg:refactor-smart_resolve_path_fragment, r=petrochenkov
...
Factor out error reporting from `smart_resolve_path_fragment` fn
This function was ridiculously monolithic before. We now have three rather-less-monolithic-and-horrifying functions.
r? @centril
2019-02-09 23:02:15 +00:00
Ralf Jung
a01efbcbec
operand-to-place copies should never be overlapping
2019-02-09 21:24:29 +01:00
bors
3315728c06
Auto merge of #57944 - estebank:unclosed-delim-the-quickening, r=oli-obk
...
Deduplicate mismatched delimiter errors
Delay unmatched delimiter errors until after the parser has run to deduplicate them when parsing and attempt recovering intelligently.
Second attempt at #54029 , follow up to #53949 . Fix #31528 .
2019-02-09 20:15:57 +00:00
Matthias Einwag
1ef34a5a39
Remove rustdoc test which referenced unstable API
2019-02-09 12:09:12 -08:00
Matthieu M
4fed67f942
Fix exhaustion of inclusive range try_fold and try_rfold
2019-02-09 18:42:34 +01:00
Matthew Jasper
0a16b8754a
Use ? in librustc macros
2019-02-09 16:29:31 +00:00
ljedrz
eb669b3a83
cleanup: remove hir_path_str
2019-02-09 16:37:17 +01:00
ljedrz
3a1a704903
cleanup: rename node_id_to_type(_opt)
2019-02-09 16:37:15 +01:00
bors
4c9233cdeb
Auto merge of #57885 - arielb1:xform-probe, r=nikomatsakis
...
Avoid committing to autoderef in object method probing
This fixes the "leak" introduced in #57835 (see test for details, also apparently #54252 had no tests for the "leaks" that were fixed in it, so go ahead and add one).
Maybe beta-nominating because regression, but I'm against landing things on beta we don't have to.
r? @nikomatsakis
2019-02-09 15:11:43 +00:00
Harald Hoyer
f06af1ff17
impl iter_sources() and iter_chain() for dyn Error
...
Examples:
```rust
let next_error_type_a = err
.iter_chain()
.filter_map(Error::downcast_ref::<ErrorTypeA>)
.next();
```
```rust
let source_root_error = err.iter_chain().last();
```
Credit for the ErrorIter goes to Tim Diekmann
https://www.reddit.com/r/rust/comments/aj3lpg/is_an_iterator_impl_over_errorsource_possible/
2019-02-09 16:04:25 +01:00
Ralf Jung
66adf52e7d
miri: give non-generic functions a stable address
2019-02-09 15:44:54 +01:00
Taiki Endo
be71fccf11
librustc_codegen_ssa => 2018
2019-02-09 23:31:47 +09:00