bors
4a52e0fd7d
Auto merge of #97690 - nikic:update-llvm-4, r=cuviper
...
Update LLVM submodule
Merge upstream release/14.x branch.
Fixes #97428 .
2022-06-04 08:48:32 +00:00
bors
b1a3e7e9c8
Auto merge of #8937 - Jarcho:merge_match_passes, r=llogiq
...
Merge various passes into `Matches`
changelog: None
2022-06-04 07:41:27 +00:00
bors
cb0584f86b
Auto merge of #97604 - nnethercote:inline-bridge-Buffer-methods, r=eddyb
...
Inline `bridge::Buffer` methods.
This fixes a performance regression caused by making `Buffer`
non-generic in #97004 .
r? `@eddyb`
2022-06-04 04:51:26 +00:00
Michael Goulet
4c6a6bc3f9
Tighten spans for bad fields in Copy struct
2022-06-03 19:17:12 -07:00
bors
c3384ea35c
Auto merge of #97717 - matthiaskrgr:rollup-lalaii2, r=matthiaskrgr
...
Rollup of 5 pull requests
Successful merges:
- #97446 (Make hir().get_generics and generics_of consistent.)
- #97656 (Add a suggestion to replace parentheses with angle brackets on associated trait constraint)
- #97692 (Add `#T-types/nominated` zulip notification)
- #97696 (Do not ICE when failing to normalize during inlining.)
- #97702 (Remove useless LocalDefId in ImplTraitContext::Universal.)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2022-06-04 02:10:35 +00:00
Michael Goulet
15cccb97d6
Encode MIR for 'unreachable' non-generic fns
2022-06-03 17:39:10 -07:00
bors
f15370b4e4
Auto merge of #97670 - spastorino:simplify-universal-impl-trait-lowering2, r=Dylan-DPC
...
Make params be SmallVec as originally was
r? `@cjgillot`
It was originally a [`SmallVec`](https://github.com/rust-lang/rust/pull/97598/files#diff-0a61b538a3cec072c76fecae4635af6a12ec3256860029ac70549c2aa53ab394L1497 ), I've mistakenly changed it [here](https://github.com/rust-lang/rust/pull/97598/files#diff-0a61b538a3cec072c76fecae4635af6a12ec3256860029ac70549c2aa53ab394R1377 ) to a `Vec`
2022-06-03 23:29:30 +00:00
Jason Newcomb
68c411ff94
Move ManualMap
into Matches
lint pass
2022-06-03 19:09:50 -04:00
Jason Newcomb
67cb5ec29f
Move TryErr
into Matches
lint pass
2022-06-03 19:09:49 -04:00
Jason Newcomb
dbc7753fb2
Merge SignificantDropInScrutinee
into Matches
lint pass
2022-06-03 19:09:49 -04:00
Jason Newcomb
8c8a52eeeb
Move MatchStrCaseMismatch
into Matches
lint pass
2022-06-03 19:09:49 -04:00
Jason Newcomb
3d8d734150
Move MatchOnVecItems
into Matches
lint pass
2022-06-03 19:09:49 -04:00
Jason Newcomb
b337f9e62e
Merge ManualUnwrapOr
into Matches
lint pass
2022-06-03 19:09:49 -04:00
xFrednet
b5eee17088
Support the #[expect]
attribute on fn parameters (RFC-2383)
2022-06-04 00:50:45 +02:00
Matthias Krüger
a88d94b072
Rollup merge of #97702 - cjgillot:no-universal-did, r=spastorino
...
Remove useless LocalDefId in ImplTraitContext::Universal.
2022-06-04 00:42:52 +02:00
Matthias Krüger
74f0bcc9c7
Rollup merge of #97696 - cjgillot:normalize-inline, r=compiler-errors
...
Do not ICE when failing to normalize during inlining.
Fixes https://github.com/rust-lang/rust/issues/97695
2022-06-04 00:42:51 +02:00
Matthias Krüger
8971235e58
Rollup merge of #97692 - compiler-errors:types-nominated, r=Mark-Simulacrum
...
Add `#T-types/nominated` zulip notification
Add rule to create topic in aforementioned stream when `I-types-nominated` tag is added
2022-06-04 00:42:50 +02:00
Matthias Krüger
401be78f2c
Rollup merge of #97656 - EdwinRy:error_ast_low_type_contraint_parentheses, r=cjgillot
...
Add a suggestion to replace parentheses with angle brackets on associated trait constraint
This implements a requested suggestion FIXME in [`compiler/rustc_ast_lowering/src/lib.rs` ](9598b4b594/compiler/rustc_ast_lowering/src/lib.rs (L921)
)
The suggestion asks for the parentheses to either be replaced with angle brackets or removed completely depending on whether there are arguments provided within.
![image](https://user-images.githubusercontent.com/20026256/171770414-ab60bfe2-ae27-44b0-964d-9ffcc32a7475.png )
![image](https://user-images.githubusercontent.com/20026256/171770383-ca8a2766-b3aa-43e3-8ba4-ae18874886ce.png )
r? `@oli-obk`
2022-06-04 00:42:50 +02:00
Matthias Krüger
e33c6edfc0
Rollup merge of #97446 - cjgillot:get-generics, r=michaelwoerister
...
Make hir().get_generics and generics_of consistent.
Fetching generics from a HIR node is currently implemented differently in 4 different places.
This PR makes the 4 implementations call the single `hir::Node::generics`, which implements the more general version from `generics_of` query.
2022-06-04 00:42:49 +02:00
nzrq
fdd8b6229e
Update set.rs
2022-06-03 17:34:15 -04:00
Jack Huey
410dcc9674
Fully stabilize NLL
2022-06-03 17:16:41 -04:00
Camille GILLOT
623ea5f5d2
Make hir().get_generics and generics_of consistent.
2022-06-03 23:07:04 +02:00
Camille GILLOT
bacd8adeda
Fail gracefully when encountering an HRTB in APIT.
2022-06-03 22:50:14 +02:00
Ralf Jung
4291332175
implement ptr.addr() via transmute
2022-06-03 16:45:35 -04:00
bors
a6b8c69548
Auto merge of #95833 - notriddle:notriddle/human-readable-signals, r=yaahc
...
std: `<ExitStatus as Display>::fmt` name the signal it died from
Related to #95601
2022-06-03 20:18:14 +00:00
bors
ebd357e4ab
Auto merge of #8934 - DevAccentor:as_underscore, r=Manishearth
...
add [`as_underscore`] lint
closes #8847
detect usage of `as _` and enforce the usage of explicit type like
```rust
fn foo(n: usize) {}
let n: u16 = 256;
foo(n as _);
```
will suggest to change to
```rust
fn foo(n: usize) {}
let n: u16 = 256;
foo(n as usize);
```
changelog: add [`as_underscore`] lint
2022-06-03 19:24:53 +00:00
Camille GILLOT
4120080d66
Remove useless LocalDefId in ImplTraitContext::Universal.
2022-06-03 20:17:12 +02:00
bors
7e9b92cb43
Auto merge of #85993 - bjorn3:serde_json, r=wesleywiser
...
Remove all json handling from rustc_serialize
Json is now handled using serde_json. Where appropriate I have replaced json usage with binary serialization (rmeta files) or manual string formatting (emcc linker arg generation).
This allowed for removing and simplifying a lot of code, which hopefully results in faster serialization/deserialization and faster compiles of rustc itself.
Where sensible we now use serde. Metadata and incr cache serialization keeps using a heavily modified (compared to crates.io) rustc-serialize version that in the future could probably be extended with zero-copy deserialization or other perf tricks that serde can't support due to supporting more than one serialization format.
Note that I had to remove `-Zast-json` and `-Zast-json-noexpand` as the relevant AST types don't implement `serde::Serialize`.
Fixes #40177
See also https://github.com/rust-lang/compiler-team/issues/418
2022-06-03 17:55:02 +00:00
nzrq
2ea9e04bf7
Add note to documentation of HashSet::intersection
2022-06-03 13:05:57 -04:00
Camille GILLOT
2e301c89c7
Do not ICE when failing to normalize during inlining.
2022-06-03 19:03:18 +02:00
bjorn3
5cc3593c17
Fix emscripten linker invocation
2022-06-03 17:02:14 +00:00
bjorn3
606848a61e
Fix all tests
2022-06-03 17:02:14 +00:00
bjorn3
7381ea019c
Remove emit_unit
...
It doesn't do anything for all encoders
2022-06-03 17:02:14 +00:00
bjorn3
22e8d5f80e
Inline many methods of Encoder
...
They aren't overridden anyway
2022-06-03 17:01:53 +00:00
bjorn3
5cd29225a5
Remove all names from Encoder
...
They aren't used anymore now that the json format has been removed
2022-06-03 16:56:17 +00:00
bjorn3
ede5ac251c
Remove json support from rustc_serialize
2022-06-03 16:46:20 +00:00
bjorn3
15e0d8bdb1
Remove support for -Zast-json and -Zast-json-noexpand
2022-06-03 16:46:20 +00:00
bjorn3
a2591639ec
Avoid rustc_serialize in linker.rs
2022-06-03 16:46:20 +00:00
bjorn3
62a4f91a5a
Use serde_json for json error messages
2022-06-03 16:46:19 +00:00
bjorn3
fc1df4ff17
Use serde_json for target spec json
2022-06-03 16:46:19 +00:00
bjorn3
fc2abe6952
Remove a couple of unused Encodable and Decodable derives
2022-06-03 16:46:19 +00:00
Maybe Waffle
afaa9854fa
Replace &Vec<_>
s with &[_]
s
2022-06-03 20:42:42 +04:00
Jason Newcomb
81e44502ac
Merge CollapsibleMatch
into Matches
lint pass
2022-06-03 12:14:24 -04:00
DevAccentor
64fe4e32db
add as_underscore lint
2022-06-03 18:11:23 +02:00
EdwinRy
cd03fe18d8
Suggest replace parentheses with angle brackets
2022-06-03 16:48:59 +01:00
bors
9a74608543
Auto merge of #97694 - Dylan-DPC:rollup-2yxo7ce, r=Dylan-DPC
...
Rollup of 3 pull requests
Successful merges:
- #97415 (Compute `is_late_bound_map` query separately from lifetime resolution)
- #97471 (Provide more context when denying invalid type params )
- #97681 (Add more eslint checks)
Failed merges:
- #97446 (Make hir().get_generics and generics_of consistent.)
r? `@ghost`
`@rustbot` modify labels: rollup
2022-06-03 15:26:06 +00:00
Dylan DPC
5549d50ccf
Rollup merge of #97681 - GuillaumeGomez:more-eslint, r=Dylan-DPC
...
Add more eslint checks
A new batch of eslint rules:
* [no-fallthrough](https://eslint.org/docs/rules/no-fallthrough )
* [no-invalid-regexp](https://eslint.org/docs/rules/no-invalid-regexp )
* [no-import-assign](https://eslint.org/docs/rules/no-import-assign )
* [no-self-compare](https://eslint.org/docs/rules/no-self-compare )
* [no-template-curly-in-string](https://eslint.org/docs/rules/no-template-curly-in-string )
* [block-scoped-var](https://eslint.org/docs/rules/block-scoped-var )
* [guard-for-in](https://eslint.org/docs/rules/guard-for-in )
* [no-alert](https://eslint.org/docs/rules/no-alert )
r? ``@notriddle``
2022-06-03 17:10:53 +02:00
Dylan DPC
6b80b151b9
Rollup merge of #97471 - estebank:prohibit-generics, r=cjgillot
...
Provide more context when denying invalid type params
2022-06-03 17:10:52 +02:00
Dylan DPC
57304823db
Rollup merge of #97415 - cjgillot:is-late-bound-solo, r=estebank
...
Compute `is_late_bound_map` query separately from lifetime resolution
This query is actually very simple, and is only useful for functions and method. It can be computed directly by fetching the HIR, with no need to embed it within the lifetime resolution visitor.
Based on https://github.com/rust-lang/rust/pull/96296
2022-06-03 17:10:51 +02:00
Dylan DPC
53ab3b2e6e
Rollup merge of #97415 - cjgillot:is-late-bound-solo, r=estebank
...
Compute `is_late_bound_map` query separately from lifetime resolution
This query is actually very simple, and is only useful for functions and method. It can be computed directly by fetching the HIR, with no need to embed it within the lifetime resolution visitor.
Based on https://github.com/rust-lang/rust/pull/96296
2022-06-03 17:10:51 +02:00