diff options
author | Jonas Schievink <[email protected]> | 2020-06-23 12:46:38 +0100 |
---|---|---|
committer | Jonas Schievink <[email protected]> | 2020-06-24 15:53:54 +0100 |
commit | 689e147c9dc416027fd36e94673431533df545f9 (patch) | |
tree | fe8c4d6937134388bd23416706c08a4de046cf06 /crates/ra_hir_def/src/body/scope.rs | |
parent | 5a81427304114d2c6ada9e9258ffe31e715c25bc (diff) |
Collect inner items in expression macros
Diffstat (limited to 'crates/ra_hir_def/src/body/scope.rs')
-rw-r--r-- | crates/ra_hir_def/src/body/scope.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/crates/ra_hir_def/src/body/scope.rs b/crates/ra_hir_def/src/body/scope.rs index 0b74199d9..81397b063 100644 --- a/crates/ra_hir_def/src/body/scope.rs +++ b/crates/ra_hir_def/src/body/scope.rs | |||
@@ -317,6 +317,26 @@ fn foo() { | |||
317 | ); | 317 | ); |
318 | } | 318 | } |
319 | 319 | ||
320 | #[test] | ||
321 | fn macro_inner_item() { | ||
322 | do_check( | ||
323 | r" | ||
324 | macro_rules! mac { | ||
325 | () => {{ | ||
326 | fn inner() {} | ||
327 | inner(); | ||
328 | }}; | ||
329 | } | ||
330 | |||
331 | fn foo() { | ||
332 | mac!(); | ||
333 | <|> | ||
334 | } | ||
335 | ", | ||
336 | &[], | ||
337 | ); | ||
338 | } | ||
339 | |||
320 | fn do_check_local_name(ra_fixture: &str, expected_offset: u32) { | 340 | fn do_check_local_name(ra_fixture: &str, expected_offset: u32) { |
321 | let (db, position) = TestDB::with_position(ra_fixture); | 341 | let (db, position) = TestDB::with_position(ra_fixture); |
322 | let file_id = position.file_id; | 342 | let file_id = position.file_id; |