aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/tests
diff options
context:
space:
mode:
authorOtavio Salvador <[email protected]>2020-07-11 23:28:07 +0100
committerOtavio Salvador <[email protected]>2020-07-11 23:30:02 +0100
commit9d114b9707fd3d6aaa3224cd1794e8e49e433f36 (patch)
tree5fbe27386e7805717f68f77252f98d12905f9798 /crates/ra_hir_ty/src/tests
parent02efda91d0fa856f0a2d33e9370147123c06abe7 (diff)
infer: Add type inference support for Union types
This adds the type inference to Union types and add a small test case for it, ensuring it keeps working in future. Fixes: #5277 Signed-off-by: Otavio Salvador <[email protected]>
Diffstat (limited to 'crates/ra_hir_ty/src/tests')
-rw-r--r--crates/ra_hir_ty/src/tests/simple.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/crates/ra_hir_ty/src/tests/simple.rs b/crates/ra_hir_ty/src/tests/simple.rs
index de63f4cce..6d3e264af 100644
--- a/crates/ra_hir_ty/src/tests/simple.rs
+++ b/crates/ra_hir_ty/src/tests/simple.rs
@@ -325,6 +325,29 @@ fn test() {
325} 325}
326 326
327#[test] 327#[test]
328fn infer_union() {
329 assert_snapshot!(
330 infer(r#"
331union MyUnion {
332 foo: u32,
333 bar: f32,
334}
335
336unsafe fn baz(u: MyUnion) {
337 let inner = u.foo;
338}
339"#),
340 @r###"
341 61..62 'u': MyUnion
342 73..99 '{ ...foo; }': ()
343 83..88 'inner': u32
344 91..92 'u': MyUnion
345 91..96 'u.foo': u32
346 "###
347 );
348}
349
350#[test]
328fn infer_refs() { 351fn infer_refs() {
329 assert_snapshot!( 352 assert_snapshot!(
330 infer(r#" 353 infer(r#"