Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/data/adt.rs')
-rw-r--r--crates/hir-def/src/data/adt.rs10
1 files changed, 7 insertions, 3 deletions
diff --git a/crates/hir-def/src/data/adt.rs b/crates/hir-def/src/data/adt.rs
index f07b125766..5790e600f6 100644
--- a/crates/hir-def/src/data/adt.rs
+++ b/crates/hir-def/src/data/adt.rs
@@ -400,7 +400,7 @@ pub(crate) fn lower_struct(
item_tree: &ItemTree,
fields: &Fields,
) -> StructKind {
- let ctx = LowerCtx::with_file_id(db, ast.file_id);
+ let ctx = LowerCtx::new(db, ast.file_id);
match (&ast.value, fields) {
(ast::StructKind::Tuple(fl), Fields::Tuple(fields)) => {
@@ -415,7 +415,9 @@ pub(crate) fn lower_struct(
|| FieldData {
name: Name::new_tuple_field(i),
type_ref: Interned::new(TypeRef::from_ast_opt(&ctx, fd.ty())),
- visibility: RawVisibility::from_ast(db, ast.with_value(fd.visibility())),
+ visibility: RawVisibility::from_ast(db, fd.visibility(), &mut |range| {
+ ctx.span_map().span_for_range(range).ctx
+ }),
},
);
}
@@ -433,7 +435,9 @@ pub(crate) fn lower_struct(
|| FieldData {
name: fd.name().map(|n| n.as_name()).unwrap_or_else(Name::missing),
type_ref: Interned::new(TypeRef::from_ast_opt(&ctx, fd.ty())),
- visibility: RawVisibility::from_ast(db, ast.with_value(fd.visibility())),
+ visibility: RawVisibility::from_ast(db, fd.visibility(), &mut |range| {
+ ctx.span_map().span_for_range(range).ctx
+ }),
},
);
}