133028 Commits

Author SHA1 Message Date
Yuki Okushi
4236d27c9b
Rollup merge of #78412 - camelid:cleanup-hash-docs, r=jonas-schievink
Improve formatting of hash collections docs
2020-10-27 08:45:30 +09:00
Yuki Okushi
7824d9abbd
Rollup merge of #78405 - notriddle:patch-3, r=lcnr
Fix typo in lint description
2020-10-27 08:45:27 +09:00
Yuki Okushi
46b8e46fe1
Rollup merge of #78396 - josephlr:ermsb, r=petrochenkov
Add compiler support for LLVM's x86_64 ERMSB feature

This change is needed for compiler-builtins to check for this feature
when implementing memcpy/memset. See:
  https://github.com/rust-lang/compiler-builtins/pull/365

Without this change, the following code compiles, but does nothing:
```rust
#[cfg(target_feature = "ermsb")]
pub unsafe fn ermsb_memcpy() { ... }
```

The change just does compile-time detection. I think that runtime
detection will have to come in a follow-up CL to std-detect.

Like all the CPU feature flags, this just references #44839

Signed-off-by: Joe Richey <joerichey@google.com>
2020-10-27 08:45:24 +09:00
Yuki Okushi
f6f8764b25
Rollup merge of #78394 - rubik:master, r=m-ou-se
fix(docs): typo in BufWriter documentation

This PR fixes a small typo in the BufWriter documentation. The current documentation looks like this:

![2020-10-26-111501_438x83_scrot](https://user-images.githubusercontent.com/238549/97160357-83d3a000-177c-11eb-8a35-3cdd3a7d89de.png)

The `<u8>` at the end is mangled by Markdown. This PR makes the `BufWriter` documentation like the `BufReader` one:

https://github.com/rust-lang/rust/blob/master/library/std/src/io/buffered/bufreader.rs#L16

I'm tagging Steve as per the Rustc dev guide.

r? @steveklabnik
2020-10-27 08:45:20 +09:00
Yuki Okushi
98e2a9564f
Rollup merge of #78388 - camelid:regression-tests, r=lcnr
Add some regression tests

Closes #75763.
Closes #76179.
2020-10-27 08:45:17 +09:00
Yuki Okushi
b72d70ef61
Rollup merge of #78377 - LeSeulArtichaut:patch-docs, r=jonas-schievink
Fix typo in debug statement
2020-10-27 08:45:14 +09:00
Yuki Okushi
5a33fa5179
Rollup merge of #78375 - taiki-e:question-in-macros, r=kennytm
Use ? in core/std macros
2020-10-27 08:45:10 +09:00
Yuki Okushi
6abd2a59e7
Rollup merge of #78349 - JohnTitor:issue-75962, r=davidtwco
Use its own `TypeckResults` to avoid ICE

Fixes #75962
2020-10-27 08:45:07 +09:00
Yuki Okushi
ae5442582d
Rollup merge of #78348 - jyn514:pub-crate, r=GuillaumeGomez
Make some functions private that don't have to be public

r? @GuillaumeGomez
2020-10-27 08:45:04 +09:00
Yuki Okushi
727e93dc74
Rollup merge of #78347 - Rustin-Liu:rustin-patch-doc, r=kennytm
Add lexicographical comparison doc

close https://github.com/rust-lang/rust/issues/72255
2020-10-27 08:45:01 +09:00
Yuki Okushi
afdd148c03
Rollup merge of #78342 - oliviacrain:checkmate-pass, r=Mark-Simulacrum
Use check-pass in single-use-lifetime ui tests

Rationale: the `single_use_lifetimes` lint is used during late name resolution, which is within the scope of `check-pass` and does not require codegen or linking.

Helps remove some FIXMES associated with #62277. Additionally tidies touched test files.
2020-10-27 08:44:57 +09:00
Yuki Okushi
0b72ca6ea6
Rollup merge of #78332 - PoignardAzur:doc_E0308, r=camelid
Update description for error E0308

Fixes #76462

r? @camelid
2020-10-27 08:44:54 +09:00
Yuki Okushi
9d7db4891b
Rollup merge of #78298 - Aaron1011:fix/nll-ranked-test, r=Mark-Simulacrum
Add test for bad NLL higher-ranked subtype

Fixes #57642
2020-10-27 08:44:51 +09:00
Yuki Okushi
f3c94374b9
Rollup merge of #78219 - JohnTitor:print-def-path, r=estebank
Prefer to use `print_def_path`

Follow-up of https://github.com/rust-lang/rust/pull/71310#discussion_r415438577
2020-10-27 08:44:47 +09:00
Yuki Okushi
2c307fab49
Rollup merge of #77703 - Keruspe:system-libunwind, r=Mark-Simulacrum
add system-llvm-libunwind config option

allows using the system-wide llvm-libunwind as the unwinder

Workaround for #76020
2020-10-27 08:44:44 +09:00
Yuki Okushi
13e88d6366
Rollup merge of #76635 - scottmcm:slice-as-chunks, r=LukasKalbertodt
Add [T]::as_chunks(_mut)

Allows getting the slices directly, rather than just through an iterator as in `array_chunks(_mut)`.  The constructors for those iterators are then written in terms of these methods, so the iterator constructors no longer have any `unsafe` of their own.

Unstable, of course. #74985
2020-10-27 08:44:41 +09:00
Tyson Nottingham
df59a44fea rustc_span: improve bounds checks in byte_pos_to_line_and_col
The effect of this change is to consider edge-case spans that start or
end at the position one past the end of a file to be valid during span
hashing and encoding. This change means that these spans will be
preserved across incremental compilation sessions when they are part of
a serialized query result, instead of causing the dummy span to be used.
2020-10-26 16:34:04 -07:00
Esteban Küber
9e16213610 Suggest calling associated fn inside traits
When calling a function that doesn't exist inside of a trait's
associated `fn`, and another associated `fn` in that trait has that
name, suggest calling it with the appropriate fully-qualified path.

Expand the label to be more descriptive.

Prompted by the following user experience:
https://users.rust-lang.org/t/cannot-find-function/50663
2020-10-26 16:31:11 -07:00
bors
a4d30a7b49 Auto merge of #77876 - tmiasko:simplify-locals, r=wesleywiser
Remove unused set-discriminant statements and assignments regardless of rvalue

* Represent use counts with u32
* Unify use count visitors
* Change RemoveStatements visitor into a function
* Remove unused set-discriminant statements
* Use exhaustive match to clarify what is being optimized
* Remove unused assignments regardless of rvalue kind
2020-10-26 23:22:39 +00:00
Nathan Whitaker
cb8b9012db Address review comments 2020-10-26 19:19:06 -04:00
rail
e568a328f9 fix the error-causing suggestion of 'borrowed_box'
fix the error-causing suggestion of 'borrowed_box',
which missed parentheses and was ambiguous.
2020-10-27 12:11:09 +13:00
Joshua Nelson
31ecd2a124 Allow using clippy with either beta or nightly
Not 100% sure this will _always_ work, but it works currently.
2020-10-26 19:00:16 -04:00
Joshua Nelson
bdbb54297a x.py fmt 2020-10-26 19:00:15 -04:00
Joshua Nelson
51f8076403 Add --fix support to x.py clippy 2020-10-26 18:58:52 -04:00
Joshua Nelson
b3246e0cb1 Set the proper sysroot for clippy
Clippy does its own runtime detection of the sysroot, which was
incorrect in this case (it used the beta sysroot). This overrides the
sysroot to use `stage0-sysroot` instead.

- Get `x.py clippy` to work on nightly
- Give a nice error message if nightly clippy isn't installed
2020-10-26 18:56:55 -04:00
Anthony Ramine
056942215c Implement -Z function-sections=yes|no
This lets rustc users tweak whether all functions should be put in their own
TEXT section, using whatever default value the target defines if the flag
is missing.
2020-10-26 23:26:43 +01:00
Nathan Whitaker
6ba127d3f0 Fix doctest 2020-10-26 18:19:49 -04:00
Nathan Whitaker
a1bb10e9b8 Remove lint from clippy 2020-10-26 18:19:48 -04:00
Nathan Whitaker
5ac1688f4b Remove lint from clippy 2020-10-26 18:19:48 -04:00
Nathan Whitaker
576eb2a30c Write docs for lint / fix review nit 2020-10-26 18:19:48 -04:00
Nathan Whitaker
1bcd2452fe Address review comments 2020-10-26 18:19:48 -04:00
Nathan Whitaker
737bfeffd2 Change to warn by default / fix typo 2020-10-26 18:19:48 -04:00
Nathan Whitaker
5643a0662a Tweak diagnostic 2020-10-26 18:19:47 -04:00
Nathan Whitaker
ce95122e95 Update doctest 2020-10-26 18:19:47 -04:00
Nathan Whitaker
8b65df06ce Address review comments 2020-10-26 18:19:47 -04:00
Nathan Whitaker
a2f4afe0f6 Add basic test 2020-10-26 18:19:46 -04:00
Nathan Whitaker
8cf1b0e1ad Uplift temporary-cstring-as-ptr into rustc 2020-10-26 18:19:40 -04:00
dvermd
6212950ceb Explain why 'run-rustfix' is not defined 2020-10-26 23:00:10 +01:00
varkor
ac1454001c Suggest expressions that look like const generic arguments should be enclosed in brackets
Co-Authored-By: Esteban Kuber <github@kuber.com.ar>
2020-10-26 21:54:45 +00:00
Sergio Benitez
7c4fe00213 Ignore threaded capture tests on WASM w/o threads 2020-10-26 14:35:38 -07:00
dvermd
8337c467e9 Change Applicability to MaybeIncorrect
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-10-26 22:34:43 +01:00
dvermd
ffddb669e0 clippy_lint: run after changing category to pendantic 2020-10-26 22:34:43 +01:00
dvermd
db40a07665 Update clippy_lints/src/ref_option_ref.rs
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-10-26 22:34:43 +01:00
dvermd
7fd74c6bf6 clippy_lint: Add Known Problems message 2020-10-26 22:34:43 +01:00
dvermd
1566db704d Update clippy_lints/src/ref_option_ref.rs
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-10-26 22:34:43 +01:00
dvermd
8e26004a5f Update clippy_lints/src/ref_option_ref.rs doctest
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-10-26 22:34:43 +01:00
dvermd
2270ff4d16 clippy_lint: Add test cases 2020-10-26 22:34:43 +01:00
dvermd
b41b38cb7f clippy_lint: Refactor 'ref_option_ref' 2020-10-26 22:34:42 +01:00
dvermd
bdd76a9d1c clippy_lint: Allow 'ref_option_ref' for 'option_if_let_else' 2020-10-26 22:34:42 +01:00
dvermd
c1f3bab6b1 clippy_lint: Add 'ref_option_ref' remove unused import 2020-10-26 22:34:42 +01:00