diff options
Diffstat (limited to 'crates/ra_hir_ty/src')
| -rw-r--r-- | crates/ra_hir_ty/src/tests/macros.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/crates/ra_hir_ty/src/tests/macros.rs b/crates/ra_hir_ty/src/tests/macros.rs index 55386c030..5d0efa0f4 100644 --- a/crates/ra_hir_ty/src/tests/macros.rs +++ b/crates/ra_hir_ty/src/tests/macros.rs | |||
| @@ -439,6 +439,27 @@ fn main() { | |||
| 439 | } | 439 | } |
| 440 | 440 | ||
| 441 | #[test] | 441 | #[test] |
| 442 | fn infer_builtin_macros_concat_with_lazy() { | ||
| 443 | assert_snapshot!( | ||
| 444 | infer(r#" | ||
| 445 | macro_rules! hello {() => {"hello"}} | ||
| 446 | |||
| 447 | #[rustc_builtin_macro] | ||
| 448 | macro_rules! concat {() => {}} | ||
| 449 | |||
| 450 | fn main() { | ||
| 451 | let x = concat!(hello!(), concat!("world", "!")); | ||
| 452 | } | ||
| 453 | "#), | ||
| 454 | @r###" | ||
| 455 | ![0; 13) '"helloworld!"': &str | ||
| 456 | [104; 161) '{ ...")); }': () | ||
| 457 | [114; 115) 'x': &str | ||
| 458 | "### | ||
| 459 | ); | ||
| 460 | } | ||
| 461 | |||
| 462 | #[test] | ||
| 442 | fn infer_derive_clone_simple() { | 463 | fn infer_derive_clone_simple() { |
| 443 | let (db, pos) = TestDB::with_position( | 464 | let (db, pos) = TestDB::with_position( |
| 444 | r#" | 465 | r#" |
