Vadim Petrochenkov
c697927f44
rustc: hir().local_def_id_to_hir_id() -> tcx.local_def_id_to_hir_id() cleanup
2023-11-26 12:41:21 +03:00
Nilstrieb
21a870515b
Fix clippy::needless_borrow in the compiler
...
`x clippy compiler -Aclippy::all -Wclippy::needless_borrow --fix`.
Then I had to remove a few unnecessary parens and muts that were exposed
now.
2023-11-21 20:13:40 +01:00
cui fliter
a44a4edc0e
Fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com>
2023-11-14 23:06:50 +08:00
George Bateman
d995bd61e7
Enums in offset_of: update based on est31, scottmcm & llogiq review
2023-10-31 23:26:02 +00:00
George Bateman
e936416a8d
Support enum variants in offset_of!
2023-10-31 23:25:54 +00:00
Michael Goulet
b2d2184ede
Format all the let chains in compiler
2023-10-13 08:59:36 +00:00
bors
2bbb619893
Auto merge of #114417 - chinedufn:fix-expect-unused-in-impl-block-rust-issue-114416, r=cjgillot
...
Fix multiple `expect` attribs in impl block
Closes #114416
2023-10-04 20:44:38 +00:00
Chinedu Francis Nwafili
bf4df0617f
Tidy
2023-10-02 10:08:03 -04:00
Chinedu Francis Nwafili
9bb55a038f
Tidy
2023-10-02 09:54:45 -04:00
Chinedu Francis Nwafili
67379c4006
Address misc feedback
2023-10-02 08:59:31 -04:00
Michael Goulet
d6ce9ce115
Don't store lazyness in DefKind
2023-09-26 02:53:59 +00:00
Chinedu Francis Nwafili
feb8002502
Fix formatting
2023-09-12 07:55:39 -04:00
Chinedu Francis Nwafili
7db9c3c1a6
Tests passing
2023-09-12 03:11:11 -04:00
Chinedu Francis Nwafili
8ad46b49a2
Misc progress
2023-08-15 09:41:43 -04:00
Nilstrieb
c75fc573aa
Use {Local}ModDefId in many queries
2023-08-14 07:22:48 +00:00
bors
1e836d12d3
Auto merge of #114710 - Urgau:fix-expect-dead_code-114557, r=cjgillot
...
Respect `#[expect]` the same way `#[allow]` is with the `dead_code` lint
This PR makes the `#[expect]` attribute being respected in the same way the `#[allow]` attribute is with the `dead_code` lint.
The fix is much more involved than I would have liked (and it's not because I didn't tried!), because the implementation took advantage of the fact that firing a lint in a allow context is a nop (for the user, as the lint is suppressed) to not fire-it at all.
And will it's fine for `#[allow]`, it definitively isn't for `#[expect]`, as the presence and absence of the lint is significant. So a big part of the PR is just adding the context information of whenever an item is on the worklist because of an `[allow]`/`#[expect]` or not.
Fixes https://github.com/rust-lang/rust/issues/114557
2023-08-12 15:14:42 +00:00
Urgau
d801a2ff15
Respect #[expect] the same way #[allow] is with the dead_code lint
2023-08-10 22:57:48 +02:00
Chinedu Francis Nwafili
b56a04975c
Fix multiple expect attribs in impl block
...
Closes #114416
2023-08-08 08:34:09 -04:00
León Orell Valerian Liehr
5468336d6b
Store the laziness of type aliases in the DefKind
2023-08-07 15:54:31 +02:00
Matthias Krüger
0baf4406da
Rollup merge of #113698 - compiler-errors:rpitit-check, r=spastorino
...
Make it clearer that we're just checking for an RPITIT
Tiny nit to use `is_impl_trait_in_trait` more, to make it clearer that we're just checking whether a def-id is an RPITIT, rather than doing something meaningful with the `opt_rpitit_info`.
r? `@spastorino`
2023-07-14 19:33:29 +02:00
Michael Goulet
14672eba8b
Make it clearer that we're just checking for an RPITIT
2023-07-14 15:18:48 +00:00
Mahdi Dibaiee
e55583c4b8
refactor(rustc_middle): Substs -> GenericArg
2023-07-14 13:27:35 +01:00
Camille GILLOT
ca4d0d4c24
Separate AnonConst from ConstBlock in HIR.
2023-06-02 21:25:18 +00:00
John Kåre Alsaker
fff20a703d
Move expansion of query macros in rustc_middle to rustc_middle::query
2023-05-15 08:49:13 +02:00
DrMeepster
2bcb018253
fmt
2023-04-21 02:14:03 -07:00
DrMeepster
b92c2f792c
fix incorrect param env in dead code lint
2023-04-21 02:14:03 -07:00
DrMeepster
511e457c4b
offset_of
2023-04-21 02:14:02 -07:00
Ezra Shaw
39e23ef532
impl reviewer feedback
...
- remove unused (pun intentional) `continue`
- improve wording with assoc items in general
2023-04-13 23:39:14 +12:00
Ezra Shaw
c41dcac8e8
dead-code-lint: de-dup multiple unused assoc fns
2023-04-13 22:42:47 +12:00
Ezra Shaw
03cf0e949f
refactor: emit "unused assoc fn" in lexical order
...
with repect to other dead code lints
2023-04-13 20:53:32 +12:00
Scott McMurray
4abb455529
Update ty::VariantDef to use IndexVec<FieldIdx, FieldDef>
...
And while doing the updates for that, also uses `FieldIdx` in `ProjectionKind::Field` and `TypeckResults::field_indices`.
There's more places that could use it (like `rustc_const_eval` and `LayoutS`), but I tried to keep this PR from exploding to *even more* places.
Part 2/? of https://github.com/rust-lang/compiler-team/issues/606
2023-03-30 09:23:40 -07:00
Michael Goulet
2eb1c08e43
Use local key in providers
2023-03-21 15:38:51 +00:00
Michael Goulet
ce8dae5800
Don't opt_rpitit_info as a separate query
2023-03-13 17:02:47 +00:00
bors
9455a5591b
Auto merge of #108700 - spastorino:new-rpitit-impl-side-2, r=compiler-errors
...
Make RPITITs simple cases work when using lower_impl_trait_in_trait_to_assoc_ty
r? `@compiler-errors`
It's probably best reviewed commit by commit.
2023-03-12 00:49:35 +00:00
bors
9b60e6c68f
Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk
...
Do not implement HashStable for HashSet (MCP 533)
This PR removes all occurrences of `HashSet` in query results, replacing it either with `FxIndexSet` or with `UnordSet`, and then removes the `HashStable` implementation of `HashSet`. This is part of implementing [MCP 533](https://github.com/rust-lang/compiler-team/issues/533 ), that is, removing the `HashStable` implementations of all collection types with unstable iteration order.
The changes are mostly mechanical. The only place where additional sorting is happening is in Miri's override implementation of the `exported_symbols` query.
2023-03-08 06:07:11 +00:00
Santiago Pastorino
b1efed4b64
Avoid accessing HIR for RPITITs assoc type on mark_live_symbols
2023-03-06 14:49:50 -03:00
Vadim Petrochenkov
c83553da31
rustc_middle: Remove trait DefIdTree
...
This trait was a way to generalize over both `TyCtxt` and `Resolver`, but now `Resolver` has access to `TyCtxt`, so this trait is no longer necessary.
2023-03-02 23:46:44 +04:00
Michael Woerister
422208ae52
Use UnordSet instead of FxHashSet for names_imported_by_glob_use query.
2023-03-01 10:20:43 +01:00
Michael Woerister
b0202d9c2c
Use LocalDefIdSet/Map instead of FxHashSet/Map for live_symbols_and_ignored_derived_traits query.
2023-03-01 10:19:26 +01:00
bors
0978711950
Auto merge of #108324 - notriddle:notriddle/assoc-fn-method, r=compiler-errors,davidtwco,estebank,oli-obk
...
diagnostics: if AssocFn has self argument, describe as method
Discussed in https://rust-lang.zulipchat.com/#narrow/stream/147480-t-compiler.2Fwg-diagnostics/topic/.22associated.20function.22.20vs.20.22method.22/near/329265515
This commit also changes the tooltips on rustdoc intra-doc links targeting methods.
For anyone not sure why this is being done, see the Reference definitions of these terms in <https://doc.rust-lang.org/1.67.1/reference/items/associated-items.html#methods >
> Associated functions whose first parameter is named `self` are called methods and may be invoked using the [method call operator](https://doc.rust-lang.org/1.67.1/reference/expressions/method-call-expr.html ), for example, `x.foo()`, as well as the usual function call notation.
In particular, while this means it's technically correct for rustc to refer to a method as an associated function (and there are a few cases where it'll still do so), rustc *must never* use the term "method" to refer to an associated function that does not have a `self` parameter.
2023-02-23 00:19:12 +00:00
Michael Howell
3d056c3125
diagnostics: if AssocFn has self argument, describe as method
...
Discussed in
https://rust-lang.zulipchat.com/#narrow/stream/147480-t-compiler.2Fwg-diagnostics/topic/.22associated.20function.22.20vs.20.22method.22/near/329265515
This commit also changes the tooltips on rustdoc intra-doc links
targeting methods.
2023-02-22 08:40:33 -07:00
clubby789
c7a4f387fd
Lint dead code in closures
2023-02-22 15:27:19 +00:00
bors
21e5b941e0
Auto merge of #108128 - clubby789:builtin-derived-attr, r=jackh726
...
Properly check for builtin derived code
Fixes #108122
2023-02-19 21:18:07 +00:00
Kyle Matsuda
c183110cc2
remove bound_type_of query; make type_of return EarlyBinder; change type_of in metadata
2023-02-16 17:05:56 -07:00
Kyle Matsuda
d822b97a27
change usages of type_of to bound_type_of
2023-02-16 17:01:52 -07:00
clubby789
90f642bb3d
Properly check for builtin derives
2023-02-16 19:44:03 +00:00
Camille GILLOT
03dff82d59
Add of_trait to DefKind::Impl.
2023-02-14 19:55:44 +00:00
Maybe Waffle
48af3a96e6
Consider #[allow(dead_code)] before lang items
2023-01-30 10:54:33 +00:00
Maybe Waffle
d4585408dc
Split has_allow_dead_code_or_lang_attr into sub functions
2023-01-30 10:53:11 +00:00
Camille GILLOT
15d6325747
Remove HirId -> LocalDefId map from HIR.
2023-01-28 09:55:26 +00:00