]> git.ipfire.org Git - thirdparty/gcc.git/commit
[Ada] Subprogram renaming fails to hide homograph
authorGary Dismukes <dismukes@adacore.com>
Mon, 28 Mar 2022 23:15:30 +0000 (19:15 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 17 May 2022 08:25:49 +0000 (08:25 +0000)
commitde0665fc7f195e12ede10abb6a98b10011e70807
tree98b6bdc7469b24b737434702501acc1e39517f28
parenta51b6016c96e221fbbfcdf75baa87fcdbc0a2904
[Ada] Subprogram renaming fails to hide homograph

The compiler failed to detect an error where the first prefix of an
expanded name given as the renamed subprogram in a subprogram renaming
declaration denotes a unit with the same name as the name given for the
subprogram renaming. Such a unit must be hidden by the renaming itself.
An error check is added to catch this case.

gcc/ada/

* sem_ch8.adb (Analyze_Subprogram_Renaming): Add error check for
the case of a renamed subprogram given by an expanded name whose
outermost prefix names a unit that is hidden by the name of the
renaming.
(Ult_Expanded_Prefix): New local expression function to return
the ultimate prefix of an expanded name.
gcc/ada/sem_ch8.adb