Nilstrieb
c63b6a437e
Rip it out
...
My type ascription
Oh rip it out
Ah
If you think we live too much then
You can sacrifice diagnostics
Don't mix your garbage
Into my syntax
So many weird hacks keep diagnostics alive
Yet I don't even step outside
So many bad diagnostics keep tyasc alive
Yet tyasc doesn't even bother to survive!
2023-05-01 16:15:13 +08:00
Yuki Okushi
ea920901e9
Rollup merge of #109909 - clubby789:import-tool-mod, r=petrochenkov
...
Deny `use`ing tool paths
Fixes #109853
Fixes #109147
2023-04-06 07:18:29 +09:00
clubby789
ebde2ab363
Deny useing tool paths
2023-04-04 14:10:13 +01:00
bors
35d06f9c74
Auto merge of #109599 - notriddle:notriddle/use-redundant-glob, r=petrochenkov
...
diagnostics: account for glob shadowing when linting redundant imports
Fixes #92904
2023-04-04 06:41:27 +00:00
Matthias Krüger
73bd953dea
slighty simplify a few boolean expressions (clippy::nonminimal_bool)
2023-04-01 23:55:22 +02:00
Michael Howell
000e94e67d
diagnostics: account for glob shadowing when linting redundant imports
...
Co-Authored-By: Vadim Petrochenkov <vadim.petrochenkov@gmail.com >
2023-04-01 11:11:21 -07:00
est31
ff2c609d66
Match unmatched backticks in compiler/ that are part of rustdoc
2023-03-03 08:39:00 +01:00
Oli Scherer
d191de63f0
Prepare for adding a TyCtxt to Resolver
2023-02-20 10:38:48 +00:00
Oli Scherer
43a5cc383d
Separate the lifetime of the session and the arena in the resolver
2023-02-14 10:01:25 +00:00
Maybe Waffle
9fe8ae792e
Rename rust_2015 => is_rust_2015
2023-02-02 08:17:13 +00:00
Maybe Waffle
fd5774a4d7
Use Edition methods a bit more
2023-01-31 10:09:22 +00:00
Felix S. Klock II
5fa1347331
Revert "Make PROC_MACRO_DERIVE_RESOLUTION_FALLBACK a hard error"
...
This reverts commit 7d82cadd97 .
I am doing this to buy us some time with respect to issue #106337 w.r.t. the
1.67 release.
2023-01-20 17:13:55 -05:00
Michael Goulet
7690fe3bc6
Simplify some iterator combinators
2023-01-04 00:48:07 +00:00
Dylan DPC
68afa32985
Rollup merge of #103760 - petrochenkov:macimp, r=cjgillot
...
resolve: Turn the binding from `#[macro_export]` into a proper `Import`
Continuation of https://github.com/rust-lang/rust/pull/91795 .
```rust
#[macro_export]
macro_rules! m { /*...*/ }
```
is desugared to something like
```rust
macro_rules! m { /*...*/ } // Non-modularized macro_rules item
pub use m; // It's modularized reexport
```
This PR adjusts the internal representation to better match this model.
2022-11-01 22:01:36 +05:30
Vadim Petrochenkov
84317518ff
resolve: Turn the binding from #[macro_export] into a proper Import
2022-10-31 21:25:00 +04:00
Aaron Hill
7d82cadd97
Make PROC_MACRO_DERIVE_RESOLUTION_FALLBACK a hard error
2022-10-24 13:40:07 -05:00
Nicholas Nethercote
f07d4efc45
Shrink hir::def::Res.
...
`Res::SelfTy` currently has two `Option`s. When the second one is `Some`
the first one is never consulted. So we can split it into two variants,
`Res::SelfTyParam` and `Res::SelfTyAlias`, reducing the size of `Res`
from 24 bytes to 12. This then shrinks `hir::Path` and
`hir::PathSegment`, which are the HIR types that take up the most space.
2022-09-29 08:44:52 +10:00
Vadim Petrochenkov
d8d3b83e3a
rustc: Parameterize ty::Visibility over used ID
...
It allows using `LocalDefId` instead of `DefId` when possible, and also encode cheaper `Visibility<DefIndex>` into metadata.
2022-09-07 13:35:41 +04:00
Oli Scherer
d3b22c7267
Directly use the instrument macro instead of its full path
2022-09-01 14:53:46 +00:00
Dylan DPC
c18292f6a3
Rollup merge of #101123 - JohnTitor:rm-register-attr, r=TaKO8Ki
...
Remove `register_attr` feature
Closes #66080
Signed-off-by: Yuki Okushi <jtitor@2k36.org >
2022-08-30 11:26:52 +05:30
Yuki Okushi
76dd5c58a0
Remove register_attr feature
...
Signed-off-by: Yuki Okushi <jtitor@2k36.org >
2022-08-28 21:23:23 +09:00
Vadim Petrochenkov
fc3f3c304b
rustc_middle: Remove Visibility::Invisible
2022-08-27 22:34:18 +03:00
Camille GILLOT
da9ccc2c98
Remove FnItemRibKind.
2022-08-23 00:08:42 +02:00
Camille GILLOT
613dc2204d
Improve local generic parameter suggestions.
2022-08-23 00:08:42 +02:00
Camille GILLOT
d7d701a9dc
Create specific ConstantHasGenerics for ConstantItemRibKind.
2022-08-23 00:08:42 +02:00
Camille GILLOT
9450f822fb
Unused tuple fields in rustc_resolve.
2022-07-25 19:45:26 +02:00
Michael Goulet
f924e74fb1
Provide a segment res in more cases
2022-06-20 21:27:42 -07:00
Takayuki Maeda
0d24405211
implement MacroData
2022-06-15 00:31:21 +09:00
Jacob Pratt
49c82f31a8
Remove crate visibility usage in compiler
2022-05-20 20:04:54 -04:00
Gary Guo
b1c6c0648e
Permit asm_const and asm_sym to reference outer generic params
2022-05-07 03:32:27 +01:00
Oli Scherer
0349f8bd79
Use a yes/no enum instead of a bool.
...
The bool's meaning wasn't obvious to me at some call sites.
2022-05-02 15:39:13 +00:00
Vadim Petrochenkov
7841247ca9
resolve: Rename unusable_binding to ignore_binding
2022-05-01 18:02:37 +03:00
Vadim Petrochenkov
f0e0434feb
resolve: Merge last_import_segment into Finalize
2022-05-01 18:02:35 +03:00
Vadim Petrochenkov
ffedcec4e8
resolve: Pass full Finalize in nearly all cases
2022-05-01 18:02:01 +03:00
Vadim Petrochenkov
900607f49a
resolve: Turn enum Finalize into an optional struct
2022-05-01 17:42:22 +03:00
Camille GILLOT
a9e13fa553
Lint elided lifetimes in path on the AST.
2022-04-17 11:03:34 +02:00
Amanieu d'Antras
dc345d8bff
Reimplement lowering of sym operands for asm! so that it also works with global_asm!
2022-04-14 15:32:03 +01:00
Vadim Petrochenkov
276b946010
Handle unusable_binding more compactly.
2022-04-12 22:07:15 +02:00
Camille GILLOT
b796d92da3
Fix imports.
2022-04-12 19:55:47 +02:00
Camille GILLOT
944d852afe
Simplify error reporting.
2022-04-12 19:53:46 +02:00
Camille GILLOT
d1c1bbe5f3
Move path resolution error to rustc_resolve::diagnostics.
2022-04-12 19:53:22 +02:00
Camille GILLOT
886613c916
Make the logic more explicit with let chains.
2022-04-12 19:52:58 +02:00
Camille GILLOT
3ee6f6e28a
Do not record Res when builing a suggestion.
2022-04-12 19:52:34 +02:00
Camille GILLOT
55ca03c0ac
Insert error after checking for binding usability.
2022-04-12 19:52:10 +02:00
Camille GILLOT
24b37a7374
Pass last_import_segment and unusable_binding as parameters.
2022-04-12 19:51:46 +02:00
Camille GILLOT
eb7f5673d9
Simplify binding finalization.
2022-04-12 19:51:22 +02:00
Camille GILLOT
e9a52c27d2
Move ident resolution to a dedicated module.
2022-04-12 19:49:02 +02:00