diff options
Diffstat (limited to 'crates/ra_hir_ty/src/tests')
-rw-r--r-- | crates/ra_hir_ty/src/tests/coercion.rs | 42 | ||||
-rw-r--r-- | crates/ra_hir_ty/src/tests/traits.rs | 8 |
2 files changed, 27 insertions, 23 deletions
diff --git a/crates/ra_hir_ty/src/tests/coercion.rs b/crates/ra_hir_ty/src/tests/coercion.rs index a2601c68a..5a1c6ccc3 100644 --- a/crates/ra_hir_ty/src/tests/coercion.rs +++ b/crates/ra_hir_ty/src/tests/coercion.rs | |||
@@ -664,6 +664,8 @@ fn test() { | |||
664 | fn coerce_unsize_trait_object() { | 664 | fn coerce_unsize_trait_object() { |
665 | assert_snapshot!( | 665 | assert_snapshot!( |
666 | infer_with_mismatches(r#" | 666 | infer_with_mismatches(r#" |
667 | #[lang = "sized"] | ||
668 | pub trait Sized {} | ||
667 | #[lang = "unsize"] | 669 | #[lang = "unsize"] |
668 | pub trait Unsize<T> {} | 670 | pub trait Unsize<T> {} |
669 | #[lang = "coerce_unsized"] | 671 | #[lang = "coerce_unsized"] |
@@ -689,19 +691,19 @@ fn test() { | |||
689 | } | 691 | } |
690 | "#, true), | 692 | "#, true), |
691 | @r###" | 693 | @r###" |
692 | 387..572 '{ ...bj2; }': () | 694 | 424..609 '{ ...bj2; }': () |
693 | 397..400 'obj': &dyn Baz<i8, i16> | 695 | 434..437 'obj': &dyn Baz<i8, i16> |
694 | 422..424 '&S': &S<i8, i16> | 696 | 459..461 '&S': &S<i8, i16> |
695 | 423..424 'S': S<i8, i16> | 697 | 460..461 'S': S<i8, i16> |
696 | 434..437 'obj': &dyn Bar<usize, i8, i16> | 698 | 471..474 'obj': &dyn Bar<usize, i8, i16> |
697 | 459..462 'obj': &dyn Baz<i8, i16> | 699 | 496..499 'obj': &dyn Baz<i8, i16> |
698 | 472..475 'obj': &dyn Foo<i8, usize> | 700 | 509..512 'obj': &dyn Foo<i8, usize> |
699 | 494..497 'obj': &dyn Bar<usize, i8, i16> | 701 | 531..534 'obj': &dyn Bar<usize, i8, i16> |
700 | 507..511 'obj2': &dyn Baz<i8, i16> | 702 | 544..548 'obj2': &dyn Baz<i8, i16> |
701 | 533..535 '&S': &S<i8, i16> | 703 | 570..572 '&S': &S<i8, i16> |
702 | 534..535 'S': S<i8, i16> | 704 | 571..572 'S': S<i8, i16> |
703 | 545..546 '_': &dyn Foo<i8, usize> | 705 | 582..583 '_': &dyn Foo<i8, usize> |
704 | 565..569 'obj2': &dyn Baz<i8, i16> | 706 | 602..606 'obj2': &dyn Baz<i8, i16> |
705 | "### | 707 | "### |
706 | ); | 708 | ); |
707 | } | 709 | } |
@@ -710,6 +712,8 @@ fn test() { | |||
710 | fn coerce_unsize_super_trait_cycle() { | 712 | fn coerce_unsize_super_trait_cycle() { |
711 | assert_snapshot!( | 713 | assert_snapshot!( |
712 | infer_with_mismatches(r#" | 714 | infer_with_mismatches(r#" |
715 | #[lang = "sized"] | ||
716 | pub trait Sized {} | ||
713 | #[lang = "unsize"] | 717 | #[lang = "unsize"] |
714 | pub trait Unsize<T> {} | 718 | pub trait Unsize<T> {} |
715 | #[lang = "coerce_unsized"] | 719 | #[lang = "coerce_unsized"] |
@@ -734,12 +738,12 @@ fn test() { | |||
734 | } | 738 | } |
735 | "#, true), | 739 | "#, true), |
736 | @r###" | 740 | @r###" |
737 | 291..347 '{ ...obj; }': () | 741 | 328..384 '{ ...obj; }': () |
738 | 301..304 'obj': &dyn D | 742 | 338..341 'obj': &dyn D |
739 | 315..317 '&S': &S | 743 | 352..354 '&S': &S |
740 | 316..317 'S': S | 744 | 353..354 'S': S |
741 | 327..330 'obj': &dyn A | 745 | 364..367 'obj': &dyn A |
742 | 341..344 'obj': &dyn D | 746 | 378..381 'obj': &dyn D |
743 | "### | 747 | "### |
744 | ); | 748 | ); |
745 | } | 749 | } |
diff --git a/crates/ra_hir_ty/src/tests/traits.rs b/crates/ra_hir_ty/src/tests/traits.rs index 646e1715c..71c0c2d27 100644 --- a/crates/ra_hir_ty/src/tests/traits.rs +++ b/crates/ra_hir_ty/src/tests/traits.rs | |||
@@ -1753,11 +1753,11 @@ fn test() { | |||
1753 | 384..500 '{ ...(f); }': () | 1753 | 384..500 '{ ...(f); }': () |
1754 | 394..397 'bar': Bar<fn(u8) -> u32> | 1754 | 394..397 'bar': Bar<fn(u8) -> u32> |
1755 | 423..426 'bar': Bar<fn(u8) -> u32> | 1755 | 423..426 'bar': Bar<fn(u8) -> u32> |
1756 | 423..432 'bar.foo()': {unknown} | 1756 | 423..432 'bar.foo()': (u8, u32) |
1757 | 443..446 'opt': Opt<u8> | 1757 | 443..446 'opt': Opt<u8> |
1758 | 465..466 'f': fn(u8) -> u32 | 1758 | 465..466 'f': fn(u8) -> u32 |
1759 | 487..490 'opt': Opt<u8> | 1759 | 487..490 'opt': Opt<u8> |
1760 | 487..497 'opt.map(f)': Opt<FnOnce::Output<fn(u8) -> u32, (u8,)>> | 1760 | 487..497 'opt.map(f)': Opt<u32> |
1761 | 495..496 'f': fn(u8) -> u32 | 1761 | 495..496 'f': fn(u8) -> u32 |
1762 | "### | 1762 | "### |
1763 | ); | 1763 | ); |
@@ -1830,9 +1830,9 @@ fn test() { | |||
1830 | 634..643 'Lazy::new': fn new<Foo, fn() -> Foo>(fn() -> Foo) -> Lazy<Foo, fn() -> Foo> | 1830 | 634..643 'Lazy::new': fn new<Foo, fn() -> Foo>(fn() -> Foo) -> Lazy<Foo, fn() -> Foo> |
1831 | 634..660 'Lazy::...n_ptr)': Lazy<Foo, fn() -> Foo> | 1831 | 634..660 'Lazy::...n_ptr)': Lazy<Foo, fn() -> Foo> |
1832 | 644..659 'make_foo_fn_ptr': fn() -> Foo | 1832 | 644..659 'make_foo_fn_ptr': fn() -> Foo |
1833 | 670..672 'r2': {unknown} | 1833 | 670..672 'r2': usize |
1834 | 675..680 'lazy2': Lazy<Foo, fn() -> Foo> | 1834 | 675..680 'lazy2': Lazy<Foo, fn() -> Foo> |
1835 | 675..686 'lazy2.foo()': {unknown} | 1835 | 675..686 'lazy2.foo()': usize |
1836 | 549..551 '{}': () | 1836 | 549..551 '{}': () |
1837 | "### | 1837 | "### |
1838 | ); | 1838 | ); |