diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-07-08 08:10:20 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-07-08 08:10:20 +0000 |
commit | ab638c49baf23c89373838b0de1ae552268fbd89 (patch) | |
tree | d6f48d9fd1c23407b976f1d27ac24452feefb143 /gcc/ada/sem_res.adb | |
parent | 31d83e106293cda0d952b87441a6d7b1396cd934 (diff) | |
download | gcc-ab638c49baf23c89373838b0de1ae552268fbd89.tar.gz |
2013-07-08 Ed Schonberg <schonberg@adacore.com>
* exp_ch9.adb (Expand_N_Asynchronous_Select): If the trigger
of the asynchronous select is a dispatching call, transform the
abortable part into a procedure, to avoid duplication of local
loop variables that may appear within.
2013-07-08 Vincent Celier <celier@adacore.com>
* projects.texi: Update the documentation of suffixes in package
Naming.
2013-07-08 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Conforming_Types): Anonymous_access_to_subprograsm
types are type conformant if the designated type of one is
protected and the other is not. Convention only matters when
checking subtype conformance.
2013-07-08 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Make_Call_Into_Operator): In ASIS mode, propagate
back the fully resolved operands to the original function call
so that all semantic information remains available to ASIS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200767 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_res.adb')
-rw-r--r-- | gcc/ada/sem_res.adb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb index 95cc437224c..9b26f096f88 100644 --- a/gcc/ada/sem_res.adb +++ b/gcc/ada/sem_res.adb @@ -1576,6 +1576,22 @@ package body Sem_Res is else Resolve (N, Typ); end if; + + -- If in ASIS_Mode, propagate operand types to original actuals of + -- function call, which would otherwise not be fully resolved. + + if ASIS_Mode then + if Is_Binary then + Set_Parameter_Associations + (Original_Node (N), + New_List (New_Copy_Tree (Left_Opnd (N)), + New_Copy_Tree (Right_Opnd (N)))); + else + Set_Parameter_Associations + (Original_Node (N), + New_List (New_Copy_Tree (Right_Opnd (N)))); + end if; + end if; end Make_Call_Into_Operator; ------------------- |