aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch6.ads
diff options
context:
space:
mode:
authorJavier Miranda <miranda@adacore.com>2010-09-09 09:47:53 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2010-09-09 11:47:53 +0200
commit0052da204e85630c973a0ad13b49e403abe1d5d3 (patch)
tree582bff1f7c1e5aea268c3bbccb6aa355adcb63cd /gcc/ada/sem_ch6.ads
parent498d1b808eea93dc9e08db1e8a7f9af4dc3bcb90 (diff)
downloadgcc-0052da204e85630c973a0ad13b49e403abe1d5d3.zip
gcc-0052da204e85630c973a0ad13b49e403abe1d5d3.tar.gz
gcc-0052da204e85630c973a0ad13b49e403abe1d5d3.tar.bz2
sem_ch3.adb (Derive_Subprogram): The code that checks if a dispatching primitive covers some interface primitive...
2010-09-09 Javier Miranda <miranda@adacore.com> * sem_ch3.adb (Derive_Subprogram): The code that checks if a dispatching primitive covers some interface primitive is incomplete. Replace such code by the invocation of a new subprogram that provides this functionality. * sem_ch6.ads (Is_Interface_Conformant): Add missing documentation. * sem_ch6.adb (Check_Missing_Return): Minor reformating (Check_Convention): Complete if-statement conditition when reporting errors (to avoid assertion failure). * sem_ch13.adb (Make_Null_Procedure_Specs): This routine was previously located in exp_ch3. Relocated inside Analyze_Freeze_Entity. (Analyze_Freeze_Entity): Invoke routine that adds the spec of non overridden null interface primitives. * sem_type.adb (Is_Ancestor): If the parent of the partial view of a private type is an interface then use the parent of its full view to climb to its ancestor type. * sem_disp.ads, sem_disp.adb (Covers_Some_Interface): New subprogram. (Check_Dispatching_Operation): Extend assertion to handle wrappers of null interface primitives. (Is_Null_Interface_Primitive): New subprogram. * exp_ch3.adb (Make_Null_Procedure_Specs): Removed. (Expand_Freeze_Record_Type): Do not generate specs of null interface subprograms because they are now generated by Analyze_Freeze_Entity. From-SVN: r164059
Diffstat (limited to 'gcc/ada/sem_ch6.ads')
-rw-r--r--gcc/ada/sem_ch6.ads8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/ada/sem_ch6.ads b/gcc/ada/sem_ch6.ads
index 5752c21..057544c 100644
--- a/gcc/ada/sem_ch6.ads
+++ b/gcc/ada/sem_ch6.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 1992-2008, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -183,9 +183,9 @@ package Sem_Ch6 is
(Tagged_Type : Entity_Id;
Iface_Prim : Entity_Id;
Prim : Entity_Id) return Boolean;
- -- Returns true if both primitives have a matching name and they are also
- -- type conformant. Special management is done for functions returning
- -- interfaces.
+ -- Returns true if both primitives have a matching name, they are type
+ -- conformant, and Prim is defined in the scope of Tagged_Type. Special
+ -- management is done for functions returning interfaces.
function Mode_Conformant (New_Id, Old_Id : Entity_Id) return Boolean;
-- Determine whether two callable entities (subprograms, entries,