diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-09 09:47:53 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-09 09:47:53 +0000 |
commit | 4d2fc0014ea682cb02e9a899fef9a19aee760346 (patch) | |
tree | 582bff1f7c1e5aea268c3bbccb6aa355adcb63cd /gcc/ada/exp_ch9.ads | |
parent | 6797073fef956e34c8d6c470c90d4c2841090c7c (diff) | |
download | gcc-4d2fc0014ea682cb02e9a899fef9a19aee760346.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164059 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch9.ads')
0 files changed, 0 insertions, 0 deletions