aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch8.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-01-06 11:20:44 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2015-01-06 11:20:44 +0100
commit1a779058e1ebd6e68771f25062e95f3bb7ff48ab (patch)
tree19e553bfc8fc773dca0168fb2791706a2c396f13 /gcc/ada/sem_ch8.adb
parent375cbc2bec0b70a3e54f02248f3a139ef5929419 (diff)
downloadgcc-1a779058e1ebd6e68771f25062e95f3bb7ff48ab.zip
gcc-1a779058e1ebd6e68771f25062e95f3bb7ff48ab.tar.gz
gcc-1a779058e1ebd6e68771f25062e95f3bb7ff48ab.tar.bz2
[multiple changes]
2015-01-06 Thomas Quinot <quinot@adacore.com> * freeze.adb (Set_SSO_From_Defaults): When setting scalar storage order to native from default, make sure to also adjust bit order. * exp_aggr.adb: Minor reformatting. 2015-01-06 Robert Dewar <dewar@adacore.com> * s-valllu.adb, s-valllu.ads, s-valuti.ads, s-valuns.adb, s-valuns.ads, s-valrea.adb, s-valrea.ads: Add some additional guards for Str'Last = Positive'Last. 2015-01-06 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb, sem_ch8.adb: Ongoing work for wrappers for actual subprograms. 2015-01-06 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Expand_Interface_Conversion): Reapply patch. From-SVN: r219250
Diffstat (limited to 'gcc/ada/sem_ch8.adb')
-rw-r--r--gcc/ada/sem_ch8.adb9
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb
index 413fe90..2f22a9a 100644
--- a/gcc/ada/sem_ch8.adb
+++ b/gcc/ada/sem_ch8.adb
@@ -3457,19 +3457,18 @@ package body Sem_Ch8 is
-- points of call within an instance. Wrappers are generated if formal
-- subprogram is subject to axiomatization.
+ -- The types in the wrapper profiles are obtained from (instances of)
+ -- the types of the formal subprogram.
+
if Is_Actual
and then GNATprove_Mode
and then Present (Containing_Package_With_Ext_Axioms (Formal_Spec))
and then not Inside_A_Generic
then
if Ekind (Old_S) = E_Function then
- Rewrite (N, Build_Function_Wrapper (New_S, Old_S));
+ Rewrite (N, Build_Function_Wrapper (Formal_Spec, Old_S));
Analyze (N);
- -- For wrappers of operators, the types are obtained from (the
- -- instances of) the types of the formal subprogram, not from the
- -- actual subprogram, that carries predefined types.
-
elsif Ekind (Old_S) = E_Operator then
Rewrite (N, Build_Operator_Wrapper (Formal_Spec, Old_S));
Analyze (N);