Commit Graph

197567 Commits

Author SHA1 Message Date
PragmaTwice
98fb65eff9 Migrate lint reports in typeck::check_unused to LintDiagnostic 2022-08-17 17:47:44 +08:00
Xiretza
d3bf103d1b Fix documentation of rustc_parse::parser::Parser::parse_stmt_without_recovery
Something seems to have gotten out of sync during the creation of #81177,
where both the argument and comment were introduced.
2022-08-17 11:18:48 +02:00
lcnr
1cede2c126 is_knowable use Result instead of Option 2022-08-17 10:17:54 +02:00
PunkyMunky64
683b3f4e6e
Fixed a few documentation errors
Quick pull request; IEEE-754, not IEEE-745. May save someone a quick second some time.
2022-08-16 22:29:14 -07:00
PunkyMunky64
89d9a35b3e
Fixed a few documentation errors
IEEE-754, not IEEE-745. May save someone a second sometime
2022-08-16 22:28:11 -07:00
Nicholas Nethercote
52d8397985 Remove AttributesExt::other_attrs.
It's unused.
2022-08-17 12:38:21 +10:00
Nicholas Nethercote
6cd40d0e51 Remove attrs arg from typaram and mk_ty_param.
Because it's always empty.
2022-08-17 12:33:42 +10:00
Nicholas Nethercote
2c24958cfd Remove TraitDef::attributes.
Because it's always empty.
2022-08-17 12:29:02 +10:00
Eric Huss
f4674b4961 Update cargo 2022-08-16 19:02:19 -07:00
Eric Huss
b176f8b78a Update books 2022-08-16 18:52:39 -07:00
Michael Goulet
33212bf7f5 Remove deferred sized checks 2022-08-16 22:30:56 +00:00
nidnogg
72ce216def Previous commit under x.py fmt 2022-08-16 19:19:59 -03:00
nidnogg
be18a9bf75 Migrated more diagnostics under transcribe.rs 2022-08-16 19:02:51 -03:00
nidnogg
7e15fbab75 Added first migration for repeated expressions without syntax vars 2022-08-16 18:34:13 -03:00
bors
86c6ebee8f Auto merge of #100644 - TaKO8Ki:rollup-n0o6a1t, r=TaKO8Ki
Rollup of 4 pull requests

Successful merges:

 - #100243 (Remove opt_remap_env_constness from rustc_query_impl)
 - #100625 (Add `IpDisplayBuffer` helper struct.)
 - #100629 (Use `merged_ty` method instead of rewriting it every time)
 - #100630 (rustdoc JSON: Fix ICE with `pub extern crate self as <self_crate_name>`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2022-08-16 21:10:08 +00:00
Takayuki Maeda
af74e7232f
Rollup merge of #100630 - Enselic:export_extern_crate_as_self, r=GuillaumeGomez
rustdoc JSON: Fix ICE with `pub extern crate self as <self_crate_name>`

Closes #100531

r? `@GuillaumeGomez`

`@rustbot` labels +A-rustdoc-json +T-rustdoc
2022-08-17 05:08:05 +09:00
Takayuki Maeda
033387a6af
Rollup merge of #100629 - GuillaumeGomez:merged-ty, r=compiler-errors
Use `merged_ty` method instead of rewriting it every time

`merged_ty` [source code](https://doc.rust-lang.org/nightly/nightly-rustc/src/rustc_typeck/check/coercion.rs.html#1331-1333) is quite literally the same, so instead of rewriting it, makes more sense to use the method instead.

r? `@compiler-errors`
2022-08-17 05:08:04 +09:00
Takayuki Maeda
b7b4f79bc9
Rollup merge of #100625 - reitermarkus:ip-display-buffer, r=thomcc
Add `IpDisplayBuffer` helper struct.

This removes the dependency on `std::io::Write` for implementing `Display`, allowing it to be moved to `core` as proposed in https://github.com/rust-lang/rfcs/pull/2832.
2022-08-17 05:08:03 +09:00
Takayuki Maeda
e6d47925af
Rollup merge of #100243 - kckeiks:remove-macros-in-query-system, r=cjgillot
Remove opt_remap_env_constness from rustc_query_impl

1st task off #96524.

r? `@cjgillot`
2022-08-17 05:08:02 +09:00
finalchild
c1a98416e3 Migrate emoji identifier diagnostics to SessionDiagnostic 2022-08-17 05:07:47 +09:00
Takayuki Maeda
5a848c701b avoid a &str to String conversion 2022-08-17 04:58:26 +09:00
Takayuki Maeda
1886aef035 point at a type parameter shadowing another type 2022-08-17 04:53:06 +09:00
bors
5746c752f4 Auto merge of #100626 - Dylan-DPC:rollup-mwbm7kj, r=Dylan-DPC
Rollup of 6 pull requests

Successful merges:

 - #99942 (Fix nonsense non-tupled `Fn` trait error)
 - #100609 (Extend invalid floating point literal suffix suggestion)
 - #100610 (Ast and parser tweaks)
 - #100613 (compiletest: fix typo in runtest.rs)
 - #100616 (⬆️ rust-analyzer)
 - #100622 (Support 128-bit atomics on all aarch64 targets)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2022-08-16 18:07:02 +00:00
Markus Reiter
44d62425b9
Simplify IpDisplayBuffer API. 2022-08-16 19:32:00 +02:00
Markus Reiter
31540f5e15
Use MaybeUninit<u8> for IpDisplayBuffer. 2022-08-16 18:12:06 +02:00
Andrew Pollack
a73afe3b7e Improving Fuchsia rustc support documentation
Improving wording
2022-08-16 15:58:56 +00:00
Markus Reiter
033e9d66ff
Move IpDisplayBuffer into submodule. 2022-08-16 17:57:46 +02:00
Markus Reiter
5a11b814d4
Add IpDisplayBuffer helper struct. 2022-08-16 17:54:55 +02:00
Martin Nordholts
dbeb506eae rustdoc JSON: Fix ICE with pub extern crate self as <self_crate_name> 2022-08-16 15:54:50 +02:00
Guillaume Gomez
1f7d1eae96 Use merged_ty method instead of rewriting it every time 2022-08-16 15:33:46 +02:00
Dylan DPC
35bd1d64cf
Rollup merge of #100622 - taiki-e:aarch64-atomic-128, r=Amanieu
Support 128-bit atomics on all aarch64 targets

Some aarch64 targets currently set `max_atomic_width` to 64, but aarch64 always supports 128-bit atomics.

r? `@Amanieu`
2022-08-16 18:16:16 +05:30
Dylan DPC
1d23d3a952
Rollup merge of #100616 - lnicola:rust-analyzer-2022-08-16, r=lnicola
⬆️ rust-analyzer

r? `@ghost`
2022-08-16 18:16:15 +05:30
Dylan DPC
04dd36941b
Rollup merge of #100613 - eltociear:patch-15, r=Mark-Simulacrum
compiletest: fix typo in runtest.rs

nonexistant -> nonexistent
2022-08-16 18:16:14 +05:30
Dylan DPC
2e78db3858
Rollup merge of #100610 - nnethercote:ast-and-parser-tweaks, r=spastorino
Ast and parser tweaks

r? `@spastorino`
2022-08-16 18:16:13 +05:30
Dylan DPC
cf5c7645ac
Rollup merge of #100609 - chenyukang:fix-100527, r=davidtwco
Extend invalid floating point literal suffix suggestion

Fixes #100527
2022-08-16 18:16:12 +05:30
Dylan DPC
070de4bc48
Rollup merge of #99942 - compiler-errors:nonsense-un-tupled-fn-trait-error, r=cjgillot
Fix nonsense non-tupled `Fn` trait error

Given this code:

```rust
#![feature(unboxed_closures)]

fn a<F: Fn<usize>>(f: F) {}

fn main() {
    a(|_: usize| {});
}
```

We currently emit this error:
```
error[E0631]: type mismatch in closure arguments
 --> src/main.rs:6:5
  |
6 |     a(|_: usize| {});
  |     ^ ---------- found signature of `fn(usize) -> _`
  |     |
  |     expected signature of `fn(usize) -> _`
  |
note: required by a bound in `a`
 --> src/main.rs:3:9
  |
3 | fn a<F: Fn<usize>>(f: F) {}
  |         ^^^^^^^^^ required by this bound in `a`

For more information about this error, try `rustc --explain E0631`.
error: could not compile `playground` due to previous error
```
Notably, it says the same thing for "expected" and "found"!

Fix the output so that we instead emit:
```
error[E0308]: mismatched types
 --> /home/gh-compiler-errors/test.rs:6:5
  |
6 |     a(|_: usize| {});
  |     ^ types differ
  |
  = note: expected trait `Fn<usize>`
             found trait `Fn<(usize,)>`
note: required by a bound in `a`
 --> /home/gh-compiler-errors/test.rs:3:9
  |
3 | fn a<F: Fn<usize>>(f: F) {}
  |         ^^^^^^^^^ required by this bound in `a`

error: aborting due to previous error
```

The error could still use some work, namely the "mismatched types" part, but I'm leaving it a bit rough since the only way you'd ever get this error is when you're messing with `#![feature(unboxed_closures)]`.

Simply making sure we actually print out the difference in trait-refs is good enough for me. I could probably factor in some additional improvements if those are desired.
2022-08-16 18:16:11 +05:30
yukang
89a51a1a48 use proper words in help message for floating point 2022-08-16 19:12:36 +08:00
bors
a39bdb1d6b Auto merge of #99612 - yanchen4791:issue-95079-fix, r=compiler-errors
Fix #95079 unhelpful error when missing move in nested closure

Fix #95079 by adding help for missing move in nested closure
2022-08-16 11:00:25 +00:00
Taiki Endo
5bb04f30cb Support 128-bit atomics on all aarch64 targets 2022-08-16 19:52:19 +09:00
Taiki Endo
8439080f27 Pass +atomics-32 feature for {arm,thumb}v4t-none-eabi 2022-08-16 19:24:12 +09:00
Laurențiu Nicola
a06da98f21 ⬆️ rust-analyzer 2022-08-16 11:24:50 +03:00
bors
14a459bf37 Auto merge of #100441 - nnethercote:shrink-ast-Attribute, r=petrochenkov
Shrink `ast::Attribute`.

r? `@ghost`
2022-08-16 07:54:22 +00:00
Ikko Ashimine
96c91afebb
compiletest: fix typo in runtest.rs
nonexistant -> nonexistent
2022-08-16 16:51:52 +09:00
bors
8556e6620e Auto merge of #100611 - matthiaskrgr:rollup-rxj10ur, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #100338 (when there are 3 or more return statements in the loop)
 - #100384 (Add support for generating unique profraw files by default when using `-C instrument-coverage`)
 - #100460 (Update the minimum external LLVM to 13)
 - #100567 (Add missing closing quote)
 - #100590 (Suggest adding an array length if possible)
 - #100600 (Rename Machine memory hooks to suggest when they run)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2022-08-16 05:13:38 +00:00
Matthias Krüger
88af506e94
Rollup merge of #100600 - saethlin:rename-memory-hooks, r=RalfJung
Rename Machine memory hooks to suggest when they run

Some of the other memory hooks start with `before_` or `after_` to indicate that they run before or after a certain operation. These don't, so I was a bit confused as to when they are supposed to run.

`memory_read` can be read two ways in English, "memory was read" or "this is a memory read" so without the prefix this was especially ambiguous.
2022-08-16 06:06:00 +02:00
Matthias Krüger
76dd1663d9
Rollup merge of #100590 - TaKO8Ki:suggest-adding-array-length, r=compiler-errors
Suggest adding an array length if possible

fixes #100448
2022-08-16 06:05:59 +02:00
Matthias Krüger
fc735b05b8
Rollup merge of #100567 - Rageking8:fix-100563, r=wesleywiser
Add missing closing quote

fixes #100563
2022-08-16 06:05:58 +02:00
Matthias Krüger
0b19a185db
Rollup merge of #100460 - cuviper:drop-llvm-12, r=nagisa
Update the minimum external LLVM to 13

With this change, we'll have stable support for LLVM 13 through 15 (pending release).
For reference, the previous increase to LLVM 12 was #90175.

r? `@nagisa`
2022-08-16 06:05:57 +02:00
Matthias Krüger
f347c42461
Rollup merge of #100384 - ridwanabdillahi:instr_profile_output, r=wesleywiser
Add support for generating unique profraw files by default when using `-C instrument-coverage`

Currently, enabling the rustc flag `-C instrument-coverage` instruments the given crate and by default uses the naming scheme `default.profraw` for any instrumented profile files generated during the execution of a binary linked against this crate. This leads to multiple binaries being executed overwriting one another and causing only the last executable run to contain actual coverage results.

This can be overridden by manually setting the environment variable `LLVM_PROFILE_FILE` to use a unique naming scheme.

This PR adds a change to add support for a reasonable default for rustc to use when enabling coverage instrumentation similar to how the Rust compiler treats generating these same `profraw` files when PGO is enabled.

The new naming scheme is set to `default_%m_%p.profraw` to ensure the uniqueness of each file being generated using [LLVMs special pattern strings](https://clang.llvm.org/docs/SourceBasedCodeCoverage.html#running-the-instrumented-program).

Today the compiler sets the default for PGO `profraw` files to `default_%m.profraw` to ensure a unique file for each run. The same can be done for the instrumented profile files generated via the `-C instrument-coverage` flag as well which LLVM has API support for.

Linked Issue: https://github.com/rust-lang/rust/issues/100381

r? `@wesleywiser`
2022-08-16 06:05:56 +02:00
Matthias Krüger
836f706d9a
Rollup merge of #100338 - lyming2007:issue-100285-fix, r=petrochenkov
when there are 3 or more return statements in the loop

emit the first 3 errors and duplicated diagnostic information
	modified:   compiler/rustc_typeck/src/check/coercion.rs
	new file:   src/test/ui/typeck/issue-100285.rs
	new file:   src/test/ui/typeck/issue-100285.stderr
2022-08-16 06:05:55 +02:00