diff options
author | Piotr Trojanek <trojanek@adacore.com> | 2024-10-08 22:52:38 +0200 |
---|---|---|
committer | Marc Poulhiès <dkm@gcc.gnu.org> | 2024-11-04 16:57:55 +0100 |
commit | 5990d3e7163ff79829cf93524ac90ea3d6d901ec (patch) | |
tree | cb45f2527e21816525f1a5b553563f823f763d17 /gcc | |
parent | 9c3b5ed02e8b0599f7566fa914f29a75aa438a7b (diff) | |
download | gcc-5990d3e7163ff79829cf93524ac90ea3d6d901ec.zip gcc-5990d3e7163ff79829cf93524ac90ea3d6d901ec.tar.gz gcc-5990d3e7163ff79829cf93524ac90ea3d6d901ec.tar.bz2 |
ada: Fix visibility of Taft amendment types
When uninstalling private package declarations we must mark Taft
amendment types hidden, just like we mark other types.
Looking at previous revisions of this code, it is quite clear that this
bug comes from a code evolution and marking types should happen in all
ELSE branches of the enclosing IF statement.
gcc/ada/ChangeLog:
* sem_ch7.adb (Uninstall_Declarations): Mark Taft amendment
types like we mark other types declared in private package
declarations.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/sem_ch7.adb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch7.adb b/gcc/ada/sem_ch7.adb index 28031b5..07a88fe 100644 --- a/gcc/ada/sem_ch7.adb +++ b/gcc/ada/sem_ch7.adb @@ -3375,6 +3375,9 @@ package body Sem_Ch7 is end loop; end; + Set_Is_Hidden (Id); + Set_Is_Potentially_Use_Visible (Id, False); + -- For subtypes of private types the frontend generates two entities: -- one associated with the partial view and the other associated with -- the full view. When the subtype declaration is public the frontend |