Commit Graph

143013 Commits

Author SHA1 Message Date
Josh Triplett
c185f08e46 Add doc alias for chdir to std::env::set_current_dir
Searching for `chdir` in the Rust documentation produces no useful
results.
2021-04-29 12:41:23 -07:00
Camille GILLOT
d794cb0d4f Introduce a hir_owner_parent query. 2021-04-29 21:36:56 +02:00
Camille GILLOT
18bffdb10e Move parenting info to index_hir. 2021-04-29 21:36:55 +02:00
Camille GILLOT
99d3798b6c Do not compute entry parent when not required. 2021-04-29 21:36:55 +02:00
Camille GILLOT
2d341e1e28 Remove parent_node. 2021-04-29 21:36:55 +02:00
Camille GILLOT
323f5b2ac9 Split crate_hash from index_hir. 2021-04-29 21:36:48 +02:00
Camille GILLOT
553004539e Make current_hir_id_owner a simple tuple. 2021-04-29 21:26:15 +02:00
Felix S. Klock II
db4c544434 Remove tests introduced or cahnged by PR #77885, which is reverted in this PR. 2021-04-29 15:13:36 -04:00
Felix S. Klock II
8d1083e319 Change to probe-stack=call (instead of inline-or-call) everywhere again, for now.
We had already reverted the change on stable back in PR #83412.

Since then, we've had some movement on issue #83139, but not a 100% fix.

But also since then, we had bug reported, issue #84667, that looks like outright
codegen breakage, rather than problems confined to debuginfo issues.

So we are reverting PR #77885 on stable and beta. We'll reland PR #77885 (or some
variant) switching back to an LLVM-dependent selection of out-of-line call vs
inline-asm, after these other issues have been resolved.
2021-04-29 15:13:21 -04:00
Josh Triplett
20b569f579 Drop alias reduce for fold - we have a reduce function
Searching for "reduce" currently puts the `reduce` alias for `fold`
above the actual `reduce` function. The `reduce` function already has a
cross-reference for `fold`, and vice versa.
2021-04-29 12:05:08 -07:00
lcnr
da6261e07f make feature recommendations optional 2021-04-29 20:44:19 +02:00
Josh Triplett
9a9d9be07e platform-support.md: Update for consistency with Target Tier Policy
Split into five sections to match the tiers: "Tier 1 with Host Tools",
"Tier 1", "Tier 2 with Host Tools", "Tier 2", and "Tier 3". Explain each
tier briefly in prose, and link to the corresponding section of the
policy for full requirements.

Drop the `host` columns from the first four, since the different
sections distinguish that. (Keep the `host` column for "Tier 3", since
it's a single list and the `host` column just indicates if host tools
are expected to work.)

Targets with host tools always have full support for std, so drop the
`std` column from those.

Move the explanations of the `std` column next to the appropriate
tables, and drop the unknown/WIP case for tier 2 targets.

Use "target" terminology consistently throughout.

Sort each table by target name.
2021-04-29 11:03:21 -07:00
Timothée Delabrouille
2cc263988e only store locations in extern_locations 2021-04-29 19:46:29 +02:00
bors
18587b14d1 Auto merge of #84556 - RalfJung:const-fn-trait-bound, r=oli-obk
use correct feature flag for impl-block-level trait bounds on const fn

I am not sure what that special hack was needed for, but it doesn't seem needed any more...

This removes the last use of the `const_fn` feature flag -- Cc https://github.com/rust-lang/rust/issues/84510
r? `@oli-obk`
2021-04-29 17:38:37 +00:00
Ryan Levick
7a5039251a Fix clippy error 2021-04-29 18:37:22 +02:00
Mohsen Zohrevandi
8a0a4b1493 Use atomics in join_orders_after_tls_destructors test
std::sync::mpsc uses thread locals and depending on the order TLS dtors
are run `rx.recv()` can panic when used in a TLS dtor.
2021-04-29 08:51:18 -07:00
bors
814a560072 Auto merge of #84233 - jyn514:track-path-prefix, r=michaelwoerister
Add TRACKED_NO_CRATE_HASH and use it for `--remap-path-prefix`

I verified locally that this fixes https://github.com/rust-lang/rust/issues/66955.

r? `@Aaron1011` (feel free to reassign)
2021-04-29 14:57:17 +00:00
Joshua Nelson
5a692a7838 Add integration test for --remap-pathh-prefix 2021-04-29 12:53:59 +00:00
Joshua Nelson
bfa74c270f Use doc-comment instad of comments consistently
This makes the comments show up in the generated docs.

- Fix markdown formatting
2021-04-29 12:53:49 +00:00
bjorn3
88901ca9d4 Ignore new failing rustc test 2021-04-29 14:16:16 +02:00
bors
10a51c0ac0 Auto merge of #84189 - jyn514:clippy-dev, r=Mark-Simulacrum
Implement `x.py test src/tools/clippy --bless`

- Add clippy_dev to the rust workspace

  Before, it would give an error that it wasn't either included or
  excluded from the workspace:

  ```
  error: current package believes it's in a workspace when it's not:
  current:   /home/joshua/rustc/src/tools/clippy/clippy_dev/Cargo.toml
  workspace: /home/joshua/rustc/Cargo.toml

  this may be fixable by adding `src/tools/clippy/clippy_dev` to the `workspace.members` array of the manifest located at: /home/joshua/rustc/Cargo.toml
  Alternatively, to keep it out of the workspace, add the package to the `workspace.exclude` array, or add an empty `[workspace]` table to the package's manifest.
  ```

- Change clippy's copy of compiletest not to special-case
  rust-lang/rust. Using OUT_DIR confused `clippy_dev` and it couldn't find
  the test outputs. This is one of the reasons why `cargo dev bless` used
  to silently do nothing (the others were that `CARGO_TARGET_DIR` and
  `PROFILE` weren't set appropriately).

- Run clippy_dev on test failure

I tested this by removing a couple lines from a stderr file, and they
were correctly replaced.

- Fix clippy_dev warnings
2021-04-29 12:03:43 +00:00
r00ster91
d0c0b8a4a3 Link between std::env::{var, var_os} and std::env::{vars, vars_os} 2021-04-29 13:15:49 +02:00
est31
a3523363db Ignore doctests in bootstrap
On bootstrap the IntoIterator trait is not implemented
yet for arrays.
2021-04-29 12:39:23 +02:00
Ralf Jung
3c4c5eb217 re-bless on 32bit 2021-04-29 12:15:30 +02:00
Guillaume Gomez
a20831e7a6 Remove unneeded bottom margin on search results 2021-04-29 11:26:35 +02:00
Guillaume Gomez
8c0469552e Remove unnecessary CSS rules for search results 2021-04-29 10:40:10 +02:00
bors
78c963945a Auto merge of #84618 - lrh2000:fix-gdb-10-str, r=Mark-Simulacrum
Fix failed tests related to pointer printing when using GDB 10

As mentioned in #79009, there are four failed debuginfo test cases when using GDB 10. This PR fixes two of them, which fail because GDB 10 won't print pointers as string anymore. We can use `printf` as a workaround. It should work regardless of the version of GDB.

Refer this [comment] for more details.

[comment]: https://github.com/rust-lang/rust/issues/79009#issuecomment-826952708
2021-04-29 08:22:44 +00:00
Ralf Jung
3752c6bb40 remove const_fn feature gate from const tests 2021-04-29 09:27:45 +02:00
Ralf Jung
9a852776f4 don't let const_fn feature flag affect impl-block-level trait bounds 2021-04-29 09:27:45 +02:00
bors
d337cec9af Auto merge of #84684 - jackh726:rollup-qxc5cos, r=jackh726
Rollup of 11 pull requests

Successful merges:

 - #84484 (Don't rebuild rustdoc and clippy after checking bootstrap)
 - #84530 (`test tidy` should ignore alternative `build` dir patterns)
 - #84531 (Ignore commented out lines when finding features)
 - #84540 (Build sanitizers for x86_64-unknown-linux-musl)
 - #84555 (Set `backtrace-on-ice` by default for compiler and codegen profiles)
 - #84585 (Add `x.py check src/librustdoc` as an alias for `x.py check src/tools/rustdoc`)
 - #84636 (rustdoc: change aliases attribute to data-aliases)
 - #84646 (Add some regression tests related to #82494)
 - #84661 (Remove extra word in `rustc_mir` docs)
 - #84663 (Remove `DropGuard` in `sys::windows::process` and use `StaticMutex` instead)
 - #84668 (Update books)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2021-04-29 05:24:45 +00:00
Rich Kadel
eef546abb6 addressed review feedback 2021-04-28 20:27:27 -07:00
Rich Kadel
c97d8992ae spanview debug output caused ICE when a function had no body 2021-04-28 20:27:27 -07:00
Rich Kadel
f12795f8a0 More improvements to macro coverage 2021-04-28 20:27:27 -07:00
Rich Kadel
c26afb765c Drop branching blocks with same span as expanded macro
Fixes: #84561
2021-04-28 20:27:27 -07:00
Jack Huey
5d2ac6f7a5
Rollup merge of #84668 - ehuss:update-books, r=ehuss
Update books

## reference

5 commits in e1abb17cd94cd5a8a374b48e1bc8134a2208ed48..d23f9da8469617e6c81121d9fd123443df70595d
2021-04-07 08:09:48 -0700 to 2021-04-28 11:16:44 -0700
- Document or-patterns (rust-lang-nursery/reference#957)
- fixed a typo in traits.md (rust-lang-nursery/reference#1009)
- Improve clarity and style consistency of crate type list (rust-lang-nursery/reference#1005)
- added macro_rules to weak keywords (rust-lang-nursery/reference#1008)
- Move non-ascii-idents content from unstable book to reference. (rust-lang-nursery/reference#999)

## book

1 commits in b54090a99ec7c4b46a5203a9c927fdbc311bb1f5..50dd06cb71beb27fdc0eebade5509cdcc1f821ed
2021-03-24 11:21:46 -0500 to 2021-04-23 13:21:54 -0500
- Update link in COPYRIGHT (http to https) (rust-lang/book#2704)

## rust-by-example

3 commits in c80f0b09fc15b9251825343be910c08531938ab2..e0a721f5202e6d9bec0aff99f10e44480c0da9e7
2021-04-08 10:28:17 -0300 to 2021-04-27 09:32:15 -0300
- broken long comments in src/types/cast.md to several shortones (rust-lang/rust-by-example#1430)
- Fix link of formatting traits (rust-lang/rust-by-example#1410)
- chore: Fix the indention of Borrowed definition (rust-lang/rust-by-example#1436)

## rustc-dev-guide

8 commits in a9bd2bbf31e4f92b5d3d8e80b22839d0cc7a2022..e72b43a64925ce053dc7830e21c1a57ba00499bd
2021-04-09 18:12:21 -0400 to 2021-04-27 12:35:37 -0700
- Suggest using `git range-diff` (rust-lang/rustc-dev-guide#1092)
- Remove the possible unnecessary flag
- Replace some Travis-related things completely
- Trigger GHA only on the original repo
- Add sample nix shell
- more RA config suggestions (rust-lang/rustc-dev-guide#1114)
- Add Polymorphisation paper (rust-lang/rustc-dev-guide#1093)
- Mention unpretty=mir-cfg for debugging MIR
2021-04-28 22:59:32 -04:00
Jack Huey
ccd04a5281
Rollup merge of #84663 - CDirkx:dropguard, r=Mark-Simulacrum
Remove `DropGuard` in `sys::windows::process` and use `StaticMutex` instead

`StaticMutex` is a mutex that when locked provides a guard that unlocks the mutex again when dropped, thus provides the exact same functionality as `DropGuard`. `StaticMutex` is used in more places, and is thus preferred over an ad-hoc construct like `DropGuard`.

````@rustbot```` label: +T-libs-impl
2021-04-28 22:59:31 -04:00
Jack Huey
096375451d
Rollup merge of #84661 - pierwill:patch-1, r=jackh726
Remove extra word in `rustc_mir` docs

Changes "is includes" to "includes" in `rustc_mir::borrow_check::type_check::type_check`.
2021-04-28 22:59:30 -04:00
Jack Huey
96c2316ed9
Rollup merge of #84646 - JohnTitor:add-some-bad-placeholder-tests, r=Dylan-DPC
Add some regression tests related to #82494

Closes #75883, closes #80779
r? ````@estebank````
2021-04-28 22:59:29 -04:00
Jack Huey
43068063c0
Rollup merge of #84636 - notriddle:data-aliases, r=jyn514,GuillaumeGomez
rustdoc: change aliases attribute to data-aliases

The "aliases" attribute is not listed [on MDN], so it sounds like it's rustdoc-specific. We don't want to conflict with any attributes that are added to the spec in the future.

[on MDN]: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements
2021-04-28 22:59:28 -04:00
Jack Huey
e6dce233a3
Rollup merge of #84585 - jyn514:check-rustdoc, r=Mark-Simulacrum
Add `x.py check src/librustdoc` as an alias for `x.py check src/tools/rustdoc`

I keep making this typo, it would be nice for it to be supported.
2021-04-28 22:59:27 -04:00
Jack Huey
87b2aced4a
Rollup merge of #84555 - jyn514:ice-backtrace, r=Mark-Simulacrum
Set `backtrace-on-ice` by default for compiler and codegen profiles

If there's an ICE while bootstrapping, it's most likely because of a change to the compiler.
2021-04-28 22:59:26 -04:00
Jack Huey
e80362245f
Rollup merge of #84540 - 12101111:enable-sanitizers, r=Mark-Simulacrum
Build sanitizers for x86_64-unknown-linux-musl

The support of sanitizers on target `x86_64-unknown-linux-musl` is landed in https://github.com/rust-lang/rust/pull/84126
2021-04-28 22:59:25 -04:00
Jack Huey
4da8c22e9b
Rollup merge of #84531 - Smittyvb:foo-not-feature, r=Mark-Simulacrum
Ignore commented out lines when finding features

This fixes #76246, where commented out lines were being detected as features by `tidy`, by ignoring those lines when looking for features. It's still not perfect, since it can be fooled by things like:
```rust
/*
#[unstable(feature = "foo", issue = "1234")]
*/
```
But luckily that never happens in `rustc`, so `foo` now ceases to appear in the unstable book.
2021-04-28 22:59:24 -04:00
Jack Huey
dbfe0e9855
Rollup merge of #84530 - richkadel:test-tidy-build-dirs, r=Mark-Simulacrum
`test tidy` should ignore alternative `build` dir patterns

I need to have multiple `build` directories, such as `build`,
`build-fuchsia`, and `build-test`. But when I'm uploading a change, I
run `./x.py test tidy`, and if I have a `build-something` directory with
Rust sources, I git a bunch of formatting errors.

`rustfmt.toml` only ignores the directory named `build`.

This change extends the patterns to also ignore `build-*` and `*-build`.

As a rustc contributor, I not only build the rust compiler to develop
new features, but I also build alternative "distributions" (using
secondary `*-config.toml` files with different configurations),
including:

* To occasionally rebuild a version of the compiler that `rust-analyzer`
can use to `check` source (which fixes issues in the VS Code UI, so
changing and rebuilding the compiler does not break VS Code editing Rust
code).
* To build custom distributions for Fuchsia
* To build test distributions when working on changes to `bootstrap`
(e.g., when I recently added `rust-demangler` to distributions)
2021-04-28 22:59:23 -04:00
Jack Huey
43afe764de
Rollup merge of #84484 - jyn514:check-tools, r=Mark-Simulacrum
Don't rebuild rustdoc and clippy after checking bootstrap

This works by unconditionally passing -Z unstable-options to the
compiler. This has no affect in practice since bootstrap doesn't use
`deny(rustc::internal)`.

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

r? ```@Mark-Simulacrum```
2021-04-28 22:59:22 -04:00
bors
ada102456d Auto merge of #84614 - RalfJung:daily, r=Mark-Simulacrum
don't enable parking_lot nightly features

Having the compiler itself depend on external libraries that use nightly features can lead to "fun" bootstrap situations. Within the rustc repo we use `cfg(bootstrap)` to resolve those, but that is not a reasonable option for external dependencies.

So I propose we stop enabling the "nightly" feature of `parking_lot` here. In my experiments, this then indeed leads to the feature not being enabled (i.e., nothing else enables it), and everything still builds. However, this means parking_lot's `RwLock` will no longer have hardware lock elision for readers -- I hope that is okay to lose in exchange for less bootstrap brain twisting. ;)

Cc `@Amanieu`
2021-04-29 02:53:52 +00:00
Ben-Lichtman
3e016a7682 Minor grammar tweaks for readability 2021-04-28 19:43:33 -07:00
mark
6697b0d0f6 fix test 2021-04-28 20:51:32 -05:00
Charles Lew
d261df4a72 Implement RFC 1260 with feature_name imported_main. 2021-04-29 08:35:08 +08:00
bors
50ca3ac24f Auto merge of #84615 - a1phyr:clone_from_pathbuf_osstring, r=Mark-Simulacrum
Override `clone_from` method for PathBuf and OsString

This was not the case before because `#[derive(Clone)]` do not do it.
2021-04-28 23:25:23 +00:00