Commit Graph

129052 Commits

Author SHA1 Message Date
hosseind75
2bfdd644dc change approach and run ui tests 2020-10-09 20:57:45 +03:30
hosseind75
01f838a626 run full query stack print just when RUST_BACKTRACE is set 2020-10-09 20:57:45 +03:30
hosseind75
2b91b7fba9 ICEs should print the top of the query stack 2020-10-09 20:57:45 +03:30
hosseind75
2124e9b50e rebase with master 2020-10-09 20:57:45 +03:30
hosseind75
15663a432d add new line 2020-10-09 20:57:45 +03:30
hosseind75
6e7e4ac419 fix clippy custom_ice_message test 2020-10-09 20:57:45 +03:30
hosseind75
d60b7e29f7 fix show we're just showing... message instead of the end of query stack message when RUST_BACKTRACE=0 2020-10-09 20:57:45 +03:30
hosseind75
d6d4388ae7 add filter regexes to load-panic-backtraces test 2020-10-09 20:57:45 +03:30
hosseind75
7ccca35c66 fix invalid-punct-ident-1 test 2020-10-09 20:57:45 +03:30
hosseind75
20ea9290ed run full query stack print just when RUST_BACKTRACE is set 2020-10-09 20:57:45 +03:30
hosseind75
17eb8d8b34 ICEs should print the top of the query stack 2020-10-09 20:57:44 +03:30
bors
be719d11e5 Auto merge of #77609 - ortem:fix-lldb-commands, r=Mark-Simulacrum
Remove redundant backslashes from `lldb_commands`
2020-10-09 15:18:41 +00:00
bors
53a4c3b0ba Auto merge of #77690 - est31:llvm_8_required, r=matthewjasper
Simplify some code in rustc_llvm/build.rs now that LLVM 8 is required

LLVM 8 is required since 8506bb0060
so this is safe to do.
2020-10-09 12:23:49 +00:00
bors
6b8b396aee Auto merge of #77698 - vandenheuvel:chalkup, r=jackh726
Update chalk to 0.32.0

r? `@jackh726`
2020-10-09 10:32:52 +00:00
bors
fc3d8e3fcc Auto merge of #77687 - est31:hash_shorter_path, r=davidtwco
Use shorter path for std:#️⃣:Hash
2020-10-09 08:09:32 +00:00
bors
9a74fb726e Auto merge of #77627 - richkadel:rust-demangler, r=tmandry
rust-demangler tool strips crate disambiguators with < 16 digits

Addresses Issue #77615.
2020-10-09 06:15:09 +00:00
bors
2359ecc71f Auto merge of #77578 - euclio:max-suggestion, r=davidtwco
suggest `MAX` constant if -1 is assigned to unsigned type

Fixes #76413.
Fixes #77416.
2020-10-09 04:22:18 +00:00
bors
9ba1d21868 Auto merge of #77519 - jyn514:track-doc-er, r=GuillaumeGomez
Resolve intra-doc links on additional documentation for re-exports in lexical scope

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

- Preserve the parent module of `DocFragment`s
  + Add `parent_module` to `DocFragment`
  + Require the `parent_module` of the item being inlined
  + Preserve the hir_id for ExternCrates so rustdoc can find the parent module later
  + Take an optional `parent_module` for `build_impl` and `merge_attrs`.
    Preserve the difference between parent modules for each doc-comment.
  + Support a single additional re-exports in from_ast. Originally this took a vec but I ended up not using it.
  + Don't require the parent_module for all `impl`s, just inlined items

    In particular, this will be `None` whenever the attribute is not on a
    re-export.

  + Only store the parent_module, not the HirId

    When re-exporting a re-export, the HirId is not available. Fortunately,
    `collect_intra_doc_links` doesn't actually need all the info from a
    HirId, just the parent module.

- Introduce `Divider`

  This distinguishes between documentation on the original from docs on  the re-export.

- Use the new module information for intra-doc links

  + Make the parent module conditional on whether the docs are on a re-export
  + Make `resolve_link` take `&Item` instead of `&mut Item`

    Previously the borrow checker gave an error about multiple mutable
    borrows, because `dox` borrowed from `item`.

  + Fix `crate::` for re-exports

    `crate` means something different depending on where the attribute
    came from.

  + Make it work for `#[doc]` attributes too

    This required combining several attributes as one so they would keep
    the links.

r? `@GuillaumeGomez`
2020-10-09 02:27:33 +00:00
bors
03ef8a081e Auto merge of #76260 - xd009642:rfc/2867, r=jonas-schievink
Implementation of RFC2867

https://github.com/rust-lang/rust/issues/74727

So I've started work on this, I think my next steps are to make use of the `instruction_set` value in the llvm codegen but this is the point where I begin to get a bit lost. I'm looking at the code but it would be nice to have some guidance on what I've currently done and what I'm doing next 😄
2020-10-09 00:29:47 +00:00
xd009642
bdb3f7716b Fix typo in error code 2020-10-08 23:56:59 +01:00
bors
8a84c4f9c8 Auto merge of #77723 - jonas-schievink:rollup-htz44r4, r=jonas-schievink
Rollup of 8 pull requests

Successful merges:

 - #76750 (Don't discourage implementing `core::fmt::Write`)
 - #77449 (BTreeMap: comment why drain_filter's size_hint is somewhat pessimistic)
 - #77660 ((docs): make mutex error comment consistent with codebase)
 - #77663 (Add compile fail test for issue 27675)
 - #77673 (Remove unnecessary lamda on emitter map.)
 - #77701 (Make `max_log_info` easily greppable (for figuring out why debug logging is disabled))
 - #77702 (Remove not needed lambda.)
 - #77710 (Update submodule llvm to get LVI bugfix)

Failed merges:

r? `@ghost`
2020-10-08 22:37:37 +00:00
xd009642
a6e2b636e6 Implement the instruction_set attribute 2020-10-08 23:32:20 +01:00
Jonas Schievink
d252848c2e
Rollup merge of #77710 - fortanix:raoul/bugfix-lvi, r=nikic
Update submodule llvm to get LVI bugfix

The LLVM LVI mitigations used register %rcs as a clobber register. This is problematic when rust uses this register to return (part of) function values. The problem was fixed upstream in:

    https://reviews.llvm.org/D88924
    https://reviews.llvm.org/D88925

PR https://github.com/rust-lang/llvm-project/pull/79 merged it in the llvm_project. This PR updates the submodule

Bug report: https://bugs.llvm.org/show_bug.cgi?id=47740
Fixes #77607

cc: @jethrogb
2020-10-08 23:23:19 +02:00
Jonas Schievink
dd09561311
Rollup merge of #77702 - heckad:patch-3, r=lcnr
Remove not needed lambda.
2020-10-08 23:23:17 +02:00
Jonas Schievink
044484078b
Rollup merge of #77701 - jyn514:debug-logging, r=Mark-Simulacrum
Make `max_log_info` easily greppable (for figuring out why debug logging is disabled)

Follow-up to https://github.com/rust-lang/rust/pull/77678#issuecomment-705545608. I'll make a PR to the dev-guide shortly changing `debug = true` to `debug-logging = true` and using this text.

Ideally wouldn't be merged before https://github.com/rust-lang/rust/pull/77678, but it practice it won't hurt anything.

r? @Mark-Simulacrum
2020-10-08 23:23:15 +02:00
Jonas Schievink
48c1ca15bb
Rollup merge of #77673 - heckad:patch-2, r=lcnr
Remove unnecessary lamda on emitter map.
2020-10-08 23:23:13 +02:00
Jonas Schievink
b1e856ad43
Rollup merge of #77663 - HeroicKatora:regression-tests-27675-object-safe, r=Aaron1011
Add compile fail test for issue 27675

A recently merged PR (#73905) strengthened the checks on bounds of associated items. This rejects the attack path of #27675 which consisted of constructing a `dyn Trait<Item=T>` where `T` would not fulfill the bounds required on `Item` of the `Trait` behind the dyn object.

This regression test, extracted from [the weaponized instance](https://github.com/rust-lang/rust/issues/27675#issuecomment-696956878), checks that this is rejected.
2020-10-08 23:23:12 +02:00
Jonas Schievink
7edb7e7ec0
Rollup merge of #77660 - nilslice:patch-1, r=jyn514
(docs): make mutex error comment consistent with codebase

Although exceptionally minor, I found this stands out from other error reporting language used in doc comments. With the existence of the `failure` crate, I suppose this could be slightly ambiguous. In any case, this change brings the particular comment into a consistent state with other mentions of returning errors.
2020-10-08 23:23:10 +02:00
Jonas Schievink
738a41b363
Rollup merge of #77449 - ssomers:btree_drain_filter_size_hint, r=Mark-Simulacrum
BTreeMap: comment why drain_filter's size_hint is somewhat pessimistic

The `size_hint` of the `DrainFilter` iterator doesn't adjust as you iterate. This hardly seems important to me, but there has been a comparable PR #64383 in the past. I guess a scenario is that you first iterate half the map manually and keep most of the key/value pairs in the map, and then tell the predicate to drain most of the key/value pairs and `.collect` the iterator over the remaining half of the map.

I am totally ambivalent whether this is better or not.

r? @Mark-Simulacrum
2020-10-08 23:23:08 +02:00
Jonas Schievink
2766b725d3
Rollup merge of #76750 - camelid:dont-discourage-core-fmt-write, r=Mark-Simulacrum
Don't discourage implementing `core::fmt::Write`

Fixes #76729.

Explain when you should use it and when you should not.
2020-10-08 23:23:07 +02:00
bors
3525087ada Auto merge of #77110 - lzutao:e0596-amp_mut, r=davidtwco
Suggest removing `&mut` from a `&mut borrow`

Modify the code added in #54720.

Closes  #75871
2020-10-08 20:43:01 +00:00
Rich Kadel
796e6ac81c rust-demangler tool strips crate disambiguators with < 16 digits
Addresses Issue #77615.
2020-10-08 11:28:01 -07:00
Camelid
c17d067018 Don't discourage implementing core::fmt::Write
Explain when you should use it and when you should not.
2020-10-08 10:49:44 -07:00
bors
6b8d7911a1 Auto merge of #77346 - Caduser2020:master, r=Mark-Simulacrum
`#[deny(unsafe_op_in_unsafe_fn)]` in sys/sgx

This is part of #73904.

Enclose unsafe operations in unsafe blocks in `libstd/sys/sgx`.
2020-10-08 17:36:25 +00:00
Andy Russell
ced11a83cb
suggest MAX constant if -1 is assigned to unsigned type 2020-10-08 13:11:31 -04:00
Raoul Strackx
8ab2ba1fe9 Update submodule llvm to get LVI bugfix 2020-10-08 17:43:26 +02:00
Caduser2020
1fb0a1d501 #[deny(unsafe_op_in_unsafe_fn)] in sys/sgx
Run `./x.py` fmt

Add reference link

Fix reference link

Apply review suggestions.
2020-10-08 10:09:18 -05:00
Lzu Tao
ab226bda9a Suggest removing &mut from borrow of &mut
Fix a typo: minding -> binding
Add test for &mut &mut
2020-10-08 14:26:21 +00:00
bors
ccea570488 Auto merge of #77678 - jyn514:tracing, r=Mark-Simulacrum
Upgrade to tracing-subscriber 0.2.13

The primary motivation is to get the changes from
https://github.com/tokio-rs/tracing/pull/990. Example output:

```
$ RUSTDOC_LOG=debug rustdoc +rustc2
warning: some trace filter directives would enable traces that are disabled statically
 | `debug` would enable the DEBUG level for all targets
 = note: the static max level is `info`
 = help: to enable DEBUG logging, remove the `max_level_info` feature
```

r? `@Mark-Simulacrum`
cc `@hawkw` ❤️
2020-10-08 13:38:29 +00:00
Kazantcev Andrey
3450cf61e0
Remove not needed lambda. 2020-10-08 16:22:31 +03:00
Joshua Nelson
a28f425ad7 Make max_log_info easily greppable 2020-10-08 09:16:27 -04:00
bors
382848989f Auto merge of #77581 - ecstatic-morse:dataflow-dump-mir-graphviz, r=davidtwco
Use `pretty::create_dump_file` for dumping dataflow results

The old code wasn't incorporating promoteds into the path, meaning other `dot` files could get clobbered. Use the MIR dump infrastructure to generate paths so that this doesn't occur in the future.
2020-10-08 11:42:24 +00:00
Bram van den Heuvel
e185278534 Update chalk to 0.32.0 2020-10-08 13:17:01 +02:00
Kazantcev Andrey
dd60ab3e2d
Commit suggestion
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-10-08 13:58:51 +03:00
bors
f1dab244d7 Auto merge of #77682 - Mark-Simulacrum:bump-stage0, r=pietroalbini
Bump to 1.48 bootstrap compiler

r? `@pietroalbini` (but anyone can feel free to review)
2020-10-08 09:50:35 +00:00
bors
1565699830 Auto merge of #77644 - GuillaumeGomez:fix-tooltip-text-display, r=jyn514
Fix tooltip text display

Currently, when we hover the icon, the text doesn't show up:

![Screenshot from 2020-10-07 11-30-44](https://user-images.githubusercontent.com/3050060/95313768-cc402200-0890-11eb-95a4-a1ae8e38aee1.png)

The bug was spotted by `@Nemo157`

r? `@jyn514`
2020-10-08 07:55:19 +00:00
Andreas Molzer
ea206f2c5a Add compile fail test for issue 27675 2020-10-08 08:18:59 +02:00
bors
9c07010b7f Auto merge of #77631 - jyn514:helpful-changelog, r=RalfJung
Make src/bootstrap/CHANGELOG.md more helpful

Addresses fe6fc555ac (r42949241).

r? `@RalfJung`
cc `@Mark-Simulacrum`
2020-10-08 05:50:49 +00:00
Joshua Nelson
e39a86019d Use the new module information for intra-doc links
- Make the parent module conditional on whether the docs are on a re-export
- Make `resolve_link` take `&Item` instead of `&mut Item`

  Previously the borrow checker gave an error about multiple mutable
  borrows, because `dox` borrowed from `item`.

- Fix `crate::` for re-exports

  `crate` means something different depending on where the attribute
  came from.

- Make it work for `#[doc]` attributes too

  This required combining several attributes as one so they would keep
  the links.
2020-10-08 00:29:38 -04:00
Joshua Nelson
8fbfdc548a Introduce Divider
This distinguishes between documentation on the original from docs on
the re-export
2020-10-08 00:29:38 -04:00