diff options
author | Javier Miranda <miranda@adacore.com> | 2008-05-28 17:33:54 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2008-05-28 17:33:54 +0200 |
commit | 9800ef594c9e73b5bd04ba27924384cf4d73a127 (patch) | |
tree | ac444fdaeb6220516ddd4d8ae14d48bc8a37f196 | |
parent | 71292a05408898d2e37ef5442083d1819ead741a (diff) | |
download | gcc-9800ef594c9e73b5bd04ba27924384cf4d73a127.zip gcc-9800ef594c9e73b5bd04ba27924384cf4d73a127.tar.gz gcc-9800ef594c9e73b5bd04ba27924384cf4d73a127.tar.bz2 |
sem_ch3.adb (Derive_Progenitor_Subprograms): Add documentation.
2008-05-28 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Derive_Progenitor_Subprograms): Add documentation.
From-SVN: r136104
-rw-r--r-- | gcc/ada/sem_ch3.adb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index 3dc47a3..88a4413 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -11398,6 +11398,13 @@ package body Sem_Ch3 is while Present (Prim_Elmt) loop Iface_Subp := Node (Prim_Elmt); + -- Exclude derivation of predefined primitives except those + -- that come from source. Required to catch declarations of + -- equality operators of interfaces. For example: + + -- type Iface is interface; + -- function "=" (Left, Right : Iface) return Boolean; + if not Is_Predefined_Dispatching_Operation (Iface_Subp) or else Comes_From_Source (Iface_Subp) then |