diff options
author | jjasmine <tanghocle456@gmail.com> | 2024-03-09 17:16:34 -0500 |
---|---|---|
committer | Arthur Cohen <arthur.cohen@embecosm.com> | 2024-08-01 13:12:16 +0200 |
commit | 8c0b6506cb42f2ba5fcea63fbc56994486d3c3ab (patch) | |
tree | 0639fe420930cf55001bf12086aa4698de4b7050 /gcc | |
parent | a7b1a89da13b70fa81e12a4dc873c96ce38e1327 (diff) | |
download | gcc-8c0b6506cb42f2ba5fcea63fbc56994486d3c3ab.zip gcc-8c0b6506cb42f2ba5fcea63fbc56994486d3c3ab.tar.gz gcc-8c0b6506cb42f2ba5fcea63fbc56994486d3c3ab.tar.bz2 |
gccrs: Store visibility properly in ExternalTypeItem
Fix issue 2897
gcc/rust/ChangeLog:
* hir/rust-ast-lower-extern.h: Add translate_visiblity
* hir/tree/rust-hir-item.h: Fix constructor of ExternalTypeItem
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/rust/hir/rust-ast-lower-extern.h | 4 | ||||
-rw-r--r-- | gcc/rust/hir/tree/rust-hir-item.h | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/gcc/rust/hir/rust-ast-lower-extern.h b/gcc/rust/hir/rust-ast-lower-extern.h index e92acdc..bd889e2 100644 --- a/gcc/rust/hir/rust-ast-lower-extern.h +++ b/gcc/rust/hir/rust-ast-lower-extern.h @@ -133,8 +133,10 @@ public: mappings->get_next_hir_id (crate_num), mappings->get_next_localdef_id (crate_num)); + HIR::Visibility vis = translate_visibility (type.get_visibility ()); + translated = new HIR::ExternalTypeItem (mapping, type.get_identifier (), - type.get_locus ()); + vis, type.get_locus ()); } private: diff --git a/gcc/rust/hir/tree/rust-hir-item.h b/gcc/rust/hir/tree/rust-hir-item.h index 3bd0102..7e0c8c6 100644 --- a/gcc/rust/hir/tree/rust-hir-item.h +++ b/gcc/rust/hir/tree/rust-hir-item.h @@ -3154,9 +3154,9 @@ class ExternalTypeItem : public ExternalItem { public: ExternalTypeItem (Analysis::NodeMapping mappings, Identifier item_name, - location_t locus) + Visibility vis, location_t locus) : ExternalItem (std::move (mappings), std::move (item_name), - Visibility (Visibility::PRIVATE), + Visibility (std::move (vis)), /* FIXME: Is that correct? */ {}, locus) {} |