Commit Graph

123020 Commits

Author SHA1 Message Date
Nicholas Nethercote
4ad5de22d1 Tweak spawn_thread_pool.
This makes the two versions (parallel and non-parallel) more similar to
each other.
2020-07-10 11:53:32 +10:00
Nicholas Nethercote
1e8ec2db1d Add an explanatory comment to scoped_thread. 2020-07-10 11:53:26 +10:00
Nicholas Nethercote
0a7d2970e5 Eliminate rust_input.
It has a single call site and having it as a separate (higher-order!)
function makes the code harder to read.
2020-07-10 11:50:21 +10:00
bors
e59b08e62e Auto merge of #74195 - Manishearth:rollup-h3m0sl8, r=Manishearth
Rollup of 14 pull requests

Successful merges:

 - #73292 (Fixing broken link for the Eq trait)
 - #73791 (Allow for parentheses after macro intra-doc-links)
 - #74070 ( Use for<'tcx> fn pointers in Providers, instead of having Providers<'tcx>.)
 - #74077 (Use relative path for local links to primitives)
 - #74079 (Eliminate confusing "globals" terminology.)
 - #74107 (Hide `&mut self` methods from Deref in sidebar if there are no `DerefMut` impl for the type.)
 - #74136 (Fix broken link in rustdocdoc)
 - #74137 (Update cargo)
 - #74142 (Liballoc use vec instead of vector)
 - #74143 (Try remove unneeded ToString import in liballoc slice)
 - #74146 (update miri)
 - #74150 (Avoid "blacklist")
 - #74184 (Add docs for intra-doc-links)
 - #74188 (Tweak `::` -> `:` typo heuristic and reduce verbosity)

Failed merges:

 - #74122 (Start-up clean-up)
 - #74127 (Avoid "whitelist")

r? @ghost
2020-07-09 21:32:02 +00:00
Manish Goregaokar
9353e21bfd
Rollup merge of #74188 - estebank:tweak-ascription-typo-heuristic, r=petrochenkov
Tweak `::` -> `:` typo heuristic and reduce verbosity

Do not trigger on correct type ascription expressions with trailing
operators and _do_ trigger on likely path typos where a turbofish is
used.

On likely path typos, remove note explaining type ascription.

Clean up indentation.

r? @petrochenkov
2020-07-09 11:50:50 -07:00
Manish Goregaokar
31d53decd0
Rollup merge of #74184 - Manishearth:doc-intra-doc, r=GuillaumeGomez
Add docs for intra-doc-links

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

Hmm, for some reason my push closed the previous PR
2020-07-09 11:50:48 -07:00
Manish Goregaokar
d4d11118ef
Rollup merge of #74150 - tamird:blocklist, r=nikomatsakis
Avoid "blacklist"

Other terms are more inclusive and precise.

Clippy still has a lint named "blacklisted-name", but renaming it would
be a breaking change, so is left for future work.

The target configuration option "abi-blacklist" has been depreciated and
renamed to "unsupported-abis". The old name continues to work.
2020-07-09 11:50:46 -07:00
Manish Goregaokar
089a6e15f6
Rollup merge of #74146 - RalfJung:miri, r=RalfJung
update miri

Fixes https://github.com/rust-lang/rust/issues/74132
Cc @rust-lang/miri r? @ghost
2020-07-09 11:50:44 -07:00
Manish Goregaokar
2d432ae35b
Rollup merge of #74143 - pickfire:patch-2, r=jonas-schievink
Try remove unneeded ToString import in liballoc slice
2020-07-09 11:50:42 -07:00
Manish Goregaokar
887f9e7e91
Rollup merge of #74142 - pickfire:patch-1, r=dtolnay
Liballoc use vec instead of vector

Keep congruency with other parts, full word vector is rarely used.
2020-07-09 11:50:40 -07:00
Manish Goregaokar
178cdc5471
Rollup merge of #74137 - ehuss:update-cargo, r=ehuss
Update cargo

6 commits in fede83ccf973457de319ba6fa0e36ead454d2e20..4f74d9b2a771c58b7ef4906b2668afd075bc8081
2020-07-02 21:51:34 +0000 to 2020-07-08 17:13:00 +0000
- Disable long_file_names test if not supported on Windows. (rust-lang/cargo#8469)
- Add support for deserializing enums in config files (rust-lang/cargo#8454)
- Write GNU tar files, supporting long names. (rust-lang/cargo#8453)
- Don't overwrite existing `rustdoc` args with --document-private-items (rust-lang/cargo#8449)
- Add some help about rustup's +toolchain syntax. (rust-lang/cargo#8455)
- Update metadata man page. (rust-lang/cargo#8451)
2020-07-09 11:50:39 -07:00
Manish Goregaokar
640569c364
Rollup merge of #74136 - JohnTitor:index-page-link, r=GuillaumeGomez
Fix broken link in rustdocdoc

The previous link redirects to https://www.rust-lang.org/learn.
2020-07-09 11:50:37 -07:00
Manish Goregaokar
38541b742a
Rollup merge of #74107 - nbdd0121:rustdoc, r=GuillaumeGomez
Hide `&mut self` methods from Deref in sidebar if there are no `DerefMut` impl for the type.

This partially addresses #74083.
2020-07-09 11:50:34 -07:00
Manish Goregaokar
89c9e970dd
Rollup merge of #74079 - nnethercote:session-globals, r=nikomatsakis
Eliminate confusing "globals" terminology.

There are some structures that are called "globals", but are they global
to a compilation session, and not truly global. I have always found this
highly confusing, so this commit renames them as "session globals" and
adds a comment explaining things.

Also, the commit fixes an unnecessary nesting of `set()` calls
`src/librustc_errors/json/tests.rs`

r? @Aaron1011
2020-07-09 11:50:32 -07:00
Manish Goregaokar
07301e3d54
Rollup merge of #74077 - sethp:docs/fix-intra-doc-primitive-link, r=jyn514
Use relative path for local links to primitives

Else, links to `char::foo` would point into `/path/to/src/libcore/std/primitive.char.html#method.foo`.

Split out from #73804.
2020-07-09 11:50:30 -07:00
Manish Goregaokar
65ac3948ae
Rollup merge of #74070 - eddyb:forall-tcx-providers, r=nikomatsakis
Use for<'tcx> fn pointers in Providers, instead of having Providers<'tcx>.

In order to work around normalization-under-HRTB (for `provide!` in `rustc_metadata`), we ended up with this:
```rust
struct Providers<'tcx> {
    type_of: fn(TyCtxt<'tcx>, DefId) -> Ty<'tcx>,
    // ...
}
```
But what I initially wanted to do, IIRC, was this:
```rust
struct Providers {
    type_of: for<'tcx> fn(TyCtxt<'tcx>, DefId) -> Ty<'tcx>,
    // ...
}
```

This PR moves to the latter, for the simple reason that only the latter allows keeping a `Providers` value, or a subset of its `fn` pointer fields, around in a `static` or `thread_local!`, which can be really useful for custom drivers that override queries.
(@jyn514 and I came across a concrete usecase of that in `rustdoc`)

The `provide!` macro in `rustc_metadata` is fixed by making the query key/value types available as type aliases under `ty::query::query_{keys,values}`, not just associated types (this is the first commit).

r? @nikomatsakis
2020-07-09 11:50:28 -07:00
Manish Goregaokar
d163524cf4
Rollup merge of #73791 - Manishearth:parens-intra-doc, r=GuillaumeGomez,jyn514
Allow for parentheses after macro intra-doc-links

None
2020-07-09 11:50:26 -07:00
Manish Goregaokar
5fc46fa9d2
Rollup merge of #73292 - poliorcetics:fix-link-in-partialeq, r=Dylan-DPC
Fixing broken link for the Eq trait

Fixes #73233.
2020-07-09 11:50:17 -07:00
Manish Goregaokar
fe351e9b8e Add test 2020-07-09 10:27:48 -07:00
Manish Goregaokar
36a229b28d Move to unstable section 2020-07-09 09:19:50 -07:00
Esteban Küber
e771a4f989 Tweak :: -> : typo heuristic and reduce verbosity
Do not trigger on correct type ascription expressions with trailing
operators and _do_ trigger on likely path typos where a turbofish is
used.

On likely path typos, remove note explaining type ascription.
2020-07-09 09:09:25 -07:00
Esteban Küber
fc6ee8f38b Reduce indentation 2020-07-09 09:05:40 -07:00
Manish Goregaokar
08d3a74a8f Allow for parentheses after macro intra-doc-links 2020-07-09 08:44:28 -07:00
Manish Goregaokar
271e2a988f Update src/doc/rustdoc/src/intra-doc-links.md 2020-07-09 08:34:42 -07:00
Manish Goregaokar
09f51d41cc Add docs for intra-doc-links 2020-07-09 08:34:38 -07:00
Ralf Jung
35fae7364f update miri 2020-07-09 13:36:16 +02:00
bors
5db778affe Auto merge of #74131 - ollie27:rustdoc_invalid_codeblock_attributes_name, r=GuillaumeGomez
rustdoc: Rename invalid_codeblock_attribute lint to be plural

Lint names should be plural as per the lint naming conventions: https://github.com/rust-lang/rfcs/blob/master/text/0344-conventions-galore.md#lints

r? @GuillaumeGomez
2020-07-09 07:00:27 +00:00
Nicholas Nethercote
81c5bb6a3f Eliminate confusing "globals" terminology.
There are some structures that are called "globals", but are they global
to a compilation session, and not truly global. I have always found this
highly confusing, so this commit renames them as "session globals" and
adds a comment explaining things.

Also, the commit fixes an unnecessary nesting of `set()` calls
`src/librustc_errors/json/tests.rs`
2020-07-09 14:11:44 +10:00
bors
8aa18cbdc5 Auto merge of #74153 - ehuss:fix-bootstrap-test-librustc, r=Mark-Simulacrum
Fix x.py test for librustc crates.

#73352 introduced a bug where `x.py test src/librustc_ast` would fail to actually run the tests. The issue is that `krate` and `all_krates` were changed to return relative paths. This caused the code to do a test of "relative_path ends with absolute path" which is always false.  The solution is to swap that around.

The change to `Crate` isn't necessary, it just simplifies the code and makes it uniform with `CrateLibrustc`.
2020-07-08 20:03:32 +00:00
Eric Huss
ca22091a90 Update cargo 2020-07-08 10:48:24 -07:00
Eric Huss
7238726399 Fix librustc_errors unit tests. 2020-07-08 10:44:29 -07:00
Seth Pellegrino
56b6b44641 Avoid running test on Windows platforms
There don't seem to be any other compiletests that are 1) building a standalone "no_core" create and then 2) trying to link against it. There seems to be a platform-specific limitation in doing so:

```
2020-07-08T16:07:42.9419409Z   = note:    Creating library D:\a\rust\rust\build\i686-pc-windows-msvc\test\rustdoc\intra-link-prim-methods-external-core\auxiliary\my_core.dll.lib and object D:\a\rust\rust\build\i686-pc-windows-msvc\test\rustdoc\intra-link-prim-methods-external-core\auxiliary\my_core.dll.exp
2020-07-08T16:07:42.9419810Z           LINK : error LNK2001: unresolved external symbol __DllMainCRTStartup@12
2020-07-08T16:07:42.9420032Z           D:\a\rust\rust\build\i686-pc-windows-msvc\test\rustdoc\intra-link-prim-methods-external-core\auxiliary\my_core.dll : fatal error LNK1120: 1 unresolved externals
```

Possibly this could be resolved by adding a `__DllMainCRTStartup` or `__DllMainCRTStartup@12` symbol in an architecture- and platform-specific way.
2020-07-08 09:48:15 -07:00
Tamir Duberstein
1e567c1168
Avoid "blacklist"
Other terms are more inclusive and precise.

Clippy still has a lint named "blacklisted-name", but renaming it would
be a breaking change, so is left for future work.

The target configuration option "abi-blacklist" has been depreciated and
renamed to "unsupported-abis". The old name continues to work.
2020-07-08 12:08:27 -04:00
Eric Huss
26353eae4c Fix x.py test for librustc crates. 2020-07-08 08:52:48 -07:00
Seth Pellegrino
9366458c58 Apply #![crate_type = "rlib"] directly to the linker 2020-07-08 08:20:43 -07:00
bors
1d919c9377 Auto merge of #74124 - ehuss:fix-doc-dry-run-up-to-date, r=Mark-Simulacrum
Fix occasional bootstrap panic in docs.

I am occasionally running into this panic when running `x.py`:

> thread 'main' panicked at 'source "/Users/eric/Proj/rust/rust/build/x86_64-apple-darwin/md-doc/unstable-book" failed to get metadata: No such file or directory (os error 2)', src/build_helper/lib.rs:173:19

I have not been able to figure out the exact sequence of commands that leads to this error (I tried for quite a while to reproduce it). I think it may involve updating my tree, but I am uncertain.  An artificial way to trigger it is to build the documentation, and then delete the `md-doc` directory manually.

The cause is that bootstrap does a "dry run" before every command, and in this case `up_to_date` panics because the destination exists (`build/x86_64-apple-darwin/doc/unstable-book/index.html `) but the source does not (`build/x86_64-apple-darwin/md-doc/unstable-book`).

I am uncertain if it is important that the last line `builder.run(…)` needs to be called during the dry run. This patch seems to fix the issue, though.
2020-07-08 09:47:41 +00:00
Ivan Tham
0965443001
Remove unneeded ToString import in liballoc slice 2020-07-08 12:47:19 +08:00
Ivan Tham
7bc85e29c9
Liballoc use vec instead of vector
Keep congruency with other parts, full word vector is rarely used.
2020-07-08 12:44:43 +08:00
Yuki Okushi
dd07774617
Fix broken link in rustdocdoc 2020-07-08 07:15:17 +09:00
Seth Pellegrino
8d267db31a Revert "Add guard to check for local core crate"
This reverts commit ee3a0f867e.
2020-07-07 14:15:31 -07:00
bors
8ac1525e09 Auto merge of #74006 - euclio:sys-unix-static-mut, r=oli-obk
libstd: remove some mutable statics in sys::unix

My understanding is that this achieves the same behavior and performance with safe code.
2020-07-07 19:35:26 +00:00
Seth Pellegrino
f258d98f65 ignore-tidy-linelength for @has assertions 2020-07-07 10:39:10 -07:00
Oliver Middleton
56fb71786a rustdoc: Rename invalid_codeblock_attribute lint to be plural 2020-07-07 18:29:26 +01:00
Seth Pellegrino
865b930bc9 Assert current behavior for links
For the two of these tests that have a local `char` to link to, this behavior isn't what's expected, but is what's happening presently.
2020-07-07 10:23:29 -07:00
bors
e1beee4992 Auto merge of #74059 - RalfJung:miri-uninit-validation, r=oli-obk
Miri value validation: fix handling of uninit memory

Fixes https://github.com/rust-lang/miri/issues/1456
Fixes https://github.com/rust-lang/miri/issues/1467

r? @oli-obk
2020-07-07 14:21:18 +00:00
Eric Huss
561d5acb9e Fix occasional bootstrap panic in docs. 2020-07-07 06:37:47 -07:00
bors
51eeabf505 Auto merge of #73562 - poliorcetics:e0432-to-edition2018, r=GuillaumeGomez
Update E0432 long description with the separate behaviors of editions 2015 and 2018

Fixes #64668.

I restarted from the work done in #71413.
2020-07-07 09:22:57 +00:00
Seth Pellegrino
165aecbee3 build extern docs as well 2020-07-06 19:46:53 -07:00
Seth Pellegrino
33a5d00efb Two new rustdoc tests for intra links
They both produce less-than-desirable output (links going to docs.rust-lang.org), but I haven't figured out yet how to assert about them properly.
2020-07-06 19:35:07 -07:00
bors
70f9d23b91 Auto merge of #74117 - Manishearth:rollup-ds7z0kx, r=Manishearth
Rollup of 14 pull requests

Successful merges:

 - #70563 ([rustdoc] Page hash handling)
 - #73856 (Edit librustc_lexer top-level docs)
 - #73870 (typeck: adding type information to projection)
 - #73953 (Audit hidden/short code suggestions)
 - #73962 (libstd/net/tcp.rs: #![deny(unsafe_op_in_unsafe_fn)])
 - #73969 (mir: mark mir construction temporaries as internal)
 - #73974 (Move A|Rc::as_ptr from feature(weak_into_raw) to feature(rc_as_ptr))
 - #74067 (rustdoc: Restore underline text decoration on hover for FQN in header)
 - #74074 (Fix the return type of Windows' `OpenOptionsExt::security_qos_flags`.)
 - #74078 (Always resolve type@primitive as a primitive, not a module)
 - #74089 (Add rust-analyzer to the build manifest)
 - #74090 (Remove unused RUSTC_DEBUG_ASSERTIONS)
 - #74102 (Fix const prop ICE)
 - #74112 (Expand abbreviation in core::ffi description)

Failed merges:

r? @ghost
2020-07-07 00:56:44 +00:00