]>
git.lizzy.rs Git - rust.git/log
bors[bot] [Mon, 22 Mar 2021 12:25:53 +0000 (12:25 +0000)]
Merge #8139
8139: Align `Canonical` and `InEnvironment` with the Chalk versions r=flodiebold a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
bors[bot] [Mon, 22 Mar 2021 12:08:25 +0000 (12:08 +0000)]
Merge #8136 #8146
8136: Introduce QuantifiedWhereClause and DynTy analogous to Chalk r=flodiebold a=flodiebold
This introduces a bunch of new binders in lots of places, which we have to be careful about, but we had to add them at some point. There's a lot of skipping of the binders; once we're done with the Chalk move, we should review the remaining ones.
8146: Document patch policy r=matklad a=matklad
bors r+
🤖
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 22 Mar 2021 12:08:04 +0000 (15:08 +0300)]
Update docs/dev/README.md
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
Aleksey Kladov [Mon, 22 Mar 2021 11:59:56 +0000 (14:59 +0300)]
Document patch policy
bors[bot] [Mon, 22 Mar 2021 10:56:37 +0000 (10:56 +0000)]
Merge #8145
8145: Document our security stance r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 22 Mar 2021 10:56:13 +0000 (13:56 +0300)]
Apply suggestions from code review
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
Aleksey Kladov [Mon, 22 Mar 2021 10:55:16 +0000 (13:55 +0300)]
Update docs/user/manual.adoc
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
Aleksey Kladov [Mon, 22 Mar 2021 10:53:00 +0000 (13:53 +0300)]
Document our security stance
changelog: feature
bors[bot] [Mon, 22 Mar 2021 05:41:04 +0000 (05:41 +0000)]
Merge #8143
8143: Reexport PrefixKind to remove deps of hir in rust-analyzer crate r=edwin0cheng a=edwin0cheng
bors r+
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
Edwin Cheng [Mon, 22 Mar 2021 05:39:13 +0000 (13:39 +0800)]
Reexport PrefixKind to remove deps to hir
bors[bot] [Sun, 21 Mar 2021 19:25:14 +0000 (19:25 +0000)]
Merge #8137
8137: Fix box pattern inference panic r=flodiebold a=Veykril
Fixes #6560
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Florian Diebold [Sun, 21 Mar 2021 19:19:07 +0000 (20:19 +0100)]
Align InEnvironment with Chalk
This in particular means storing a chalk_ir::Environment, not our
TraitEnvironment. This makes InEnvironment not usable for Type, where we
need to keep the full TraitEnvironment.
Florian Diebold [Sun, 21 Mar 2021 19:05:38 +0000 (20:05 +0100)]
Align Canonical more with Chalk's version
In particular, use chalk_ir::CanonicalVarKinds.
bors[bot] [Sun, 21 Mar 2021 17:57:45 +0000 (17:57 +0000)]
Merge #8134
8134: Correct the paths of submodules from the include! macro r=edwin0cheng a=sticnarf
This PR should fix #7846. It mostly follows the instructions from @edwin0cheng in that issue.
Co-authored-by: Yilin Chen <sticnarf@gmail.com>
Yilin Chen [Sun, 21 Mar 2021 17:54:05 +0000 (01:54 +0800)]
check is_include_macro only when attr_path is not specified
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
Lukas Wirth [Sun, 21 Mar 2021 17:18:25 +0000 (18:18 +0100)]
Fix box pattern inference panic
Florian Diebold [Sun, 21 Mar 2021 16:40:14 +0000 (17:40 +0100)]
Use QuantifiedWhereClause in generic_predicates as well
Still far too much binder skipping going on; I find it hard to imagine
this is all correct, but the tests pass.
Florian Diebold [Sun, 21 Mar 2021 12:22:22 +0000 (13:22 +0100)]
Introduce QuantifiedWhereClause and DynTy analogous to Chalk
This introduces a bunch of new binders in lots of places, which we have
to be careful about, but we had to add them at some point.
bors[bot] [Sun, 21 Mar 2021 16:42:08 +0000 (16:42 +0000)]
Merge #8133
8133: Ignore type bindings in generic_predicates_for_param (fix panic on ena and crates depending on it) r=flodiebold a=flodiebold
This allows us to handle more cases without a query cycle, which includes certain cases that rustc accepted. That in turn means we avoid triggering salsa-rs/salsa#257 on valid code (it will still happen if the user writes an actual cycle).
We actually accept more definitions than rustc now; that's because rustc only ignores bindings when looking up super traits, whereas we now also ignore them when looking for predicates to disambiguate associated type shorthand. We could introduce a separate query for super traits if necessary, but for now I think this should be fine.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
bors[bot] [Sun, 21 Mar 2021 15:57:14 +0000 (15:57 +0000)]
Merge #8132
8132: Add `'` to trigger_characters, allowing more direct lifetime completions r=Veykril a=Veykril
Fixes having to type a character after `'` to complete lifetimes and labels
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Sun, 21 Mar 2021 15:49:31 +0000 (15:49 +0000)]
Merge #8135
8135: more clippy::{perf, complexity, style} fixes r=Veykril a=matthiaskrgr
Co-authored-by: Matthias Krüger <matthias.krueger@famsik.de>
bors[bot] [Sun, 21 Mar 2021 15:21:11 +0000 (15:21 +0000)]
Merge #8128
8128: Expand legacy-scoped macro during collection r=jonas-schievink a=jonas-schievink
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8120
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Matthias Krüger [Sun, 21 Mar 2021 14:33:18 +0000 (15:33 +0100)]
a lot of clippy::style fixes
Yilin Chen [Sun, 21 Mar 2021 15:02:01 +0000 (23:02 +0800)]
use the included file as the source of expanded include macro
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
Florian Diebold [Sat, 20 Mar 2021 19:07:36 +0000 (20:07 +0100)]
Ignore type bindings in generic_predicates_for_param
This allows us to handle more cases without a query cycle, which
includes certain cases that rustc accepted. That in turn means we avoid
triggering salsa-rs/salsa#257 on valid code (it will still happen if the
user writes an actual cycle).
We actually accept more definitions than rustc now; that's because rustc
only ignores bindings when looking up super traits, whereas we now also
ignore them when looking for predicates to disambiguate associated type
shorthand. We could introduce a separate query for super traits if
necessary, but for now I think this should be fine.
Florian Diebold [Sat, 20 Mar 2021 14:26:42 +0000 (15:26 +0100)]
Test for a Salsa bug
Matthias Krüger [Sun, 21 Mar 2021 12:13:34 +0000 (13:13 +0100)]
clippy::complexity simplifications related to Iterators
Matthias Krüger [Sun, 21 Mar 2021 11:49:40 +0000 (12:49 +0100)]
xtask: remove redundant lifetime (clippy::extra_unused_lifetimes)
Matthias Krüger [Sun, 21 Mar 2021 11:38:21 +0000 (12:38 +0100)]
use strip_prefix() instead of starts_with and slicing (clippy::manual_strip)
Matthias Krüger [Sun, 21 Mar 2021 11:05:08 +0000 (12:05 +0100)]
remove more redundant clones (clippy::redundant_clone())
Lukas Wirth [Sun, 21 Mar 2021 10:05:04 +0000 (11:05 +0100)]
Add `'` to trigger_characters, allowing more direct lifetime completions
bors[bot] [Sun, 21 Mar 2021 09:51:06 +0000 (09:51 +0000)]
Merge #8131
8131: Do smart case fuzzy search during flyimports r=SomeoneToIgnore a=SomeoneToIgnore
For now, last actionable part of https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/autoimport.20weirdness
Should help https://github.com/rust-analyzer/rust-analyzer/issues/7902
Now during the flyimport completion, if the input is searched case-sensitively, if the input contains any non-lowercase letters; otherwise the lookup done as before, case-insensitively.
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Kirill Bulatov [Sat, 20 Mar 2021 22:50:59 +0000 (00:50 +0200)]
Fix the profile string
Kirill Bulatov [Sat, 20 Mar 2021 22:17:09 +0000 (00:17 +0200)]
Less reallocations
Kirill Bulatov [Sat, 20 Mar 2021 21:55:16 +0000 (23:55 +0200)]
Use smart case in flyimport items lookup
bors[bot] [Sun, 21 Mar 2021 09:37:08 +0000 (09:37 +0000)]
Merge #8123
8123: Do not display unqualified assoc item completions r=SomeoneToIgnore a=SomeoneToIgnore
Part of https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/autoimport.20weirdness
Removes all flyimport completions for any unqualified associated type, effectively reverting https://github.com/rust-analyzer/rust-analyzer/pull/8095
I've explained the reasoning in the corresponding FIXME and open to discussions.
As an alternative way, we could add yet another parameter in the method that's used by the `qualify_path` and enable it for the qualify assists only.
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
bors[bot] [Sun, 21 Mar 2021 08:21:52 +0000 (08:21 +0000)]
Merge #8130
8130: Revert "Temporarily run git describe on CI to debug #8043" r=lnicola a=lnicola
Reverts rust-analyzer/rust-analyzer#8121
bors r+
changelog skip
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
Laurențiu Nicola [Sun, 21 Mar 2021 08:21:29 +0000 (10:21 +0200)]
Revert "Temporarily run git describe on CI to debug #8043"
Jonas Schievink [Sun, 21 Mar 2021 00:45:24 +0000 (01:45 +0100)]
Expand legacy-scoped macro during collection
bors[bot] [Sun, 21 Mar 2021 00:29:15 +0000 (00:29 +0000)]
Merge #8127
8127: Add label completion r=Veykril a=Veykril
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sun, 21 Mar 2021 00:10:59 +0000 (01:10 +0100)]
Fix incorrect scoping in while expressions
bors[bot] [Sun, 21 Mar 2021 00:10:14 +0000 (00:10 +0000)]
Merge #8122
8122: Make bare underscore token an Ident rather than Punct in proc-macro r=edwin0cheng a=kevinmehall
In rustc and proc-macro2, a bare `_` token is parsed for procedural macro purposes as `Ident` rather than `Punct` (see https://github.com/rust-lang/rust/pull/48842). This changes rust-analyzer to match rustc's behavior and implementation by handling `_` as an Ident in token trees, but explicitly preventing `$x:ident` from matching it in MBE.
proc macro crate:
```rust
#[proc_macro]
pub fn input(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
dbg!(input)
}
```
test crate:
```rust
test_proc_macro::input!(_);
```
output (rustc):
```rust
[test-proc-macro/src/lib.rs:10] input = TokenStream [
Ident {
ident: "_",
span: #0 bytes(173..174),
},
]
```
output (rust-analyzer before this change):
```rust
[test-proc-macro/src/lib.rs:10] input = TokenStream [
Punct {
ch: '_',
spacing: Joint,
span:
4294967295 ,
},
]
```
output (rust-analyzer after this change):
```rust
[test-proc-macro/src/lib.rs:10] input = TokenStream [
Ident {
ident: "_",
span:
4294967295 ,
},
]
```
Co-authored-by: Kevin Mehall <km@kevinmehall.net>
Lukas Wirth [Sun, 21 Mar 2021 00:00:09 +0000 (01:00 +0100)]
Add label completion
Lukas Wirth [Sat, 20 Mar 2021 23:59:45 +0000 (00:59 +0100)]
Track labels in scopes
Kevin Mehall [Sat, 20 Mar 2021 23:43:51 +0000 (17:43 -0600)]
Fix and test edge cases of `_` as ident
bors[bot] [Sat, 20 Mar 2021 22:32:25 +0000 (22:32 +0000)]
Merge #8124
8124: Add basic lifetime completion r=Veykril a=Veykril
This adds basic lifetime completion, basic in the sense that the completions for lifetimes are only shown when the user enters `'` followed by a char. Showing them when nothing is entered is kind of a pain, as we would want them to only show up where they are useful which in turn requires a lot of tree traversal and cursor position checking to verify whether the position is valid for a lifetime. This in itself doesn't seem too bad as usually when you know you want to write a lifetime putting `'` to ask for lifetime completions seems fine.
~~I'll take a look at whether its possible to lift the restriction of having to put a char after `'`.~~ This actually already works so I guess this is the clients responsibility, in which case VSCode doesn't like it.
![TYH9gIlyVo](https://user-images.githubusercontent.com/
3757771 /
111886437 -
c9b02f80 -89cd-11eb-9bee-
340f1536b0de .gif)
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 20 Mar 2021 21:43:42 +0000 (22:43 +0100)]
Add basic lifetime completion
bors[bot] [Sat, 20 Mar 2021 22:23:50 +0000 (22:23 +0000)]
Merge #8125
8125: Don't use an untyped String for ActiveParam tracking r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 20 Mar 2021 22:22:09 +0000 (23:22 +0100)]
Don't use an untyped String for ActiveParam tracking
Kirill Bulatov [Sat, 20 Mar 2021 21:04:28 +0000 (23:04 +0200)]
Disable unqualified assoc items completion for now
Kirill Bulatov [Sat, 20 Mar 2021 20:54:04 +0000 (22:54 +0200)]
Docs
Kirill Bulatov [Sat, 20 Mar 2021 13:02:52 +0000 (15:02 +0200)]
Do not query item search by name eagerly
Kirill Bulatov [Sat, 20 Mar 2021 09:04:01 +0000 (11:04 +0200)]
Do not propose assoc items without qualifiers
Kevin Mehall [Sat, 20 Mar 2021 18:18:57 +0000 (12:18 -0600)]
Make bare underscore token an Ident rather than Punct in proc-macro
bors[bot] [Sat, 20 Mar 2021 17:13:03 +0000 (17:13 +0000)]
Merge #8121
8121: Temporarily run git describe on CI to debug #8043 r=lnicola a=lnicola
bors r+
changelog skip
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Sat, 20 Mar 2021 17:12:19 +0000 (19:12 +0200)]
Temporarily run git describe to debug #8043
bors[bot] [Sat, 20 Mar 2021 12:58:28 +0000 (12:58 +0000)]
Merge #8119
8119: Don't return a SourceChange on WillRenameFiles when nothing gets refactored r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 20 Mar 2021 12:44:39 +0000 (13:44 +0100)]
Don't return a SourceChange on WillRenameFiles when nothing gets refactored
Lukas Wirth [Sat, 20 Mar 2021 12:44:12 +0000 (13:44 +0100)]
Fix add_life_to_type label typo
bors[bot] [Sat, 20 Mar 2021 11:47:50 +0000 (11:47 +0000)]
Merge #8117
8117: Turn Obligation into something similar to chalk_ir::DomainGoal r=flodiebold a=flodiebold
This includes starting to make use of Chalk's `Cast` trait.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Florian Diebold [Sat, 20 Mar 2021 10:23:59 +0000 (11:23 +0100)]
Turn Obligation into something similar to chalk_ir::DomainGoal
This includes starting to make use of Chalk's `Cast` trait.
bors[bot] [Sat, 20 Mar 2021 10:23:55 +0000 (10:23 +0000)]
Merge #8116
8116: Remove WhereClause::Error r=flodiebold a=flodiebold
Chalk doesn't have it, and judging from the removed code, it wasn't useful anyway.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Florian Diebold [Sat, 20 Mar 2021 09:51:00 +0000 (10:51 +0100)]
Remove WhereClause::Error
Chalk doesn't have it, and judging from the removed code, it wasn't
useful anyway.
bors[bot] [Sat, 20 Mar 2021 09:47:46 +0000 (09:47 +0000)]
Merge #8115
8115: Rename GenericPredicate -> WhereClause r=flodiebold a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Florian Diebold [Sat, 20 Mar 2021 09:46:36 +0000 (10:46 +0100)]
Rename GenericPredicate -> WhereClause
bors[bot] [Fri, 19 Mar 2021 21:20:43 +0000 (21:20 +0000)]
Merge #8112
8112: Revamp `hir_def` attribute API r=Veykril a=jonas-schievink
This adds `AttrsWithOwner`, which can construct an accurate `AttrSourceMap` without requiring additional information from the caller.
r? @Veykril
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Fri, 19 Mar 2021 20:23:57 +0000 (21:23 +0100)]
Add `AttrsWithOwner` and clean up `source_map`
Jonas Schievink [Fri, 19 Mar 2021 18:42:06 +0000 (19:42 +0100)]
Move `AttrsOwnerNode` to syntax and make it public
bors[bot] [Fri, 19 Mar 2021 18:56:38 +0000 (18:56 +0000)]
Merge #8111
8111: Return `Either` from `MacroDefId::ast_id` r=jonas-schievink a=jonas-schievink
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Fri, 19 Mar 2021 18:56:13 +0000 (19:56 +0100)]
Return `Either` from `MacroDefId::ast_id`
bors[bot] [Fri, 19 Mar 2021 18:01:34 +0000 (18:01 +0000)]
Merge #8110
8110: simplify r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Fri, 19 Mar 2021 18:00:20 +0000 (21:00 +0300)]
simplify
changelog skip
bors[bot] [Fri, 19 Mar 2021 17:54:30 +0000 (17:54 +0000)]
Merge #8109
8109: Make ast editing more ergonomic r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Fri, 19 Mar 2021 17:46:18 +0000 (20:46 +0300)]
Make ast editing more ergonomic
changelog internal
bors[bot] [Fri, 19 Mar 2021 17:25:09 +0000 (17:25 +0000)]
Merge #8108
8108: Fix handling of `#![cfg]` in outline module file r=jonas-schievink a=jonas-schievink
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Fri, 19 Mar 2021 17:24:04 +0000 (18:24 +0100)]
Fix handling of `#![cfg]` in outline module file
bors[bot] [Fri, 19 Mar 2021 13:34:46 +0000 (13:34 +0000)]
Merge #8106
8106: Add builtin macro-like attributes r=jonas-schievink a=jonas-schievink
We also have to know about these to resolve them
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Fri, 19 Mar 2021 13:33:31 +0000 (14:33 +0100)]
Add builtin macro-like attributes
bors[bot] [Fri, 19 Mar 2021 13:23:56 +0000 (13:23 +0000)]
Merge #8104
8104: Rename derive-specific APIs r=jonas-schievink a=jonas-schievink
Indicate that they're derive-specific
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Fri, 19 Mar 2021 13:23:13 +0000 (14:23 +0100)]
Rename derive-specific APIs
bors[bot] [Fri, 19 Mar 2021 12:13:21 +0000 (12:13 +0000)]
Merge #8102
8102: Cleanup qualify_path r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 19 Mar 2021 12:12:00 +0000 (13:12 +0100)]
Cleanup qualify_path
bors[bot] [Fri, 19 Mar 2021 11:38:40 +0000 (11:38 +0000)]
Merge #8097
8097: Parse extended_key_value_attributes r=jonas-schievink a=Veykril
Companion PR https://github.com/rust-analyzer/ungrammar/pull/31
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Fri, 19 Mar 2021 11:12:54 +0000 (11:12 +0000)]
Merge #8101
8101: Replace Projection variant in GenericPredicate with AliasEq r=flodiebold a=Veykril
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 19 Mar 2021 01:07:15 +0000 (02:07 +0100)]
Replace Projection variant in GenericPredicate with AliasEq
Lukas Wirth [Thu, 18 Mar 2021 21:25:10 +0000 (22:25 +0100)]
Parse extended_key_value_attributes
bors[bot] [Thu, 18 Mar 2021 23:07:41 +0000 (23:07 +0000)]
Merge #8099
8099: Document fields of `ModuleId` r=jonas-schievink a=jonas-schievink
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Thu, 18 Mar 2021 23:06:35 +0000 (00:06 +0100)]
Document fields of `ModuleId`
bors[bot] [Thu, 18 Mar 2021 21:40:12 +0000 (21:40 +0000)]
Merge #8095
8095: Fix associated items not being appended to paths in import_assets r=SomeoneToIgnore a=Veykril
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Thu, 18 Mar 2021 21:32:34 +0000 (21:32 +0000)]
Merge #8086
8086: Use a highlight modifier for intra doc links r=Veykril a=Veykril
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 18 Mar 2021 14:22:27 +0000 (15:22 +0100)]
Use a highlight modifier for intra doc links
bors[bot] [Thu, 18 Mar 2021 20:54:24 +0000 (20:54 +0000)]
Merge #8096
8096: Chalkify TraitRef r=flodiebold a=flodiebold
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Florian Diebold [Thu, 18 Mar 2021 20:53:19 +0000 (21:53 +0100)]
Chalkify TraitRef
Lukas Wirth [Thu, 18 Mar 2021 20:36:52 +0000 (21:36 +0100)]
Fix associated items not being appended to paths in import_assets
bors[bot] [Thu, 18 Mar 2021 19:26:10 +0000 (19:26 +0000)]
Merge #8083
8083: Track source file IDs in source mapping of Attrs r=jonas-schievink a=Veykril
Fixes the panics/incorrect injection highlighting of outline module declarations until we figure out a nicer source mapping strategy for attributes.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Thu, 18 Mar 2021 19:16:05 +0000 (19:16 +0000)]
Merge #8094
8094: Fix infinite recursion when computing diagnostics for inner items r=jonas-schievink a=jonas-schievink
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Thu, 18 Mar 2021 19:15:06 +0000 (20:15 +0100)]
Fix infinite recursion when computing diagnostics for inner items
bors[bot] [Thu, 18 Mar 2021 19:05:20 +0000 (19:05 +0000)]
Merge #8093
8093: Record custom derive helpers in `DefMap` r=jonas-schievink a=jonas-schievink
Also clean up proc macro attribute parsing a bit
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Thu, 18 Mar 2021 19:04:20 +0000 (20:04 +0100)]
Add test
Jonas Schievink [Thu, 18 Mar 2021 18:56:37 +0000 (19:56 +0100)]
Record custom derive helpers in `DefMap`
Also clean up proc macro attribute parsing a bit