2016-06-14 Javier Miranda <miranda@adacore.com>
commitc8dfb75f1a223e0cef87bb2be0c99594969b6dc3
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Jun 2016 12:37:54 +0000 (14 12:37 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Jun 2016 12:37:54 +0000 (14 12:37 +0000)
treeeb700e1338bceabade0d1558530388a890e27c95
parent14c96e30732caa87ac434dad535442d459169378
2016-06-14  Javier Miranda  <miranda@adacore.com>

* sem_attr.adb (Analyze_Attribute_Old_Result): Adding assertion.
(Analyze_Attribute [Attribute_Old]): Generating C handle
analysis of 'old in inlined postconditions.
(Analyze_Attribute [Attribute_Result]): Generating C handle analysis
of 'result in inlined postconditions.
* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Old]):
Generating C handle expansion of 'old in inlined postconditions.
* inline.adb (Declare_Postconditions_Result): New subprogram.
* sem_ch12.adb (Copy_Generic_Node): Copy pragmas generated from
aspects when generating C code since pre/post conditions are
inlined and the frontend inlining relies on this routine to
perform inlining.
* exp_ch6.adb (Inlined_Subprogram): Replace Generate_C_Code
by Modify_Tree_For_C.
* exp_unst.adb (Visit_Node): Searching for up-level references
skip entities defined in inlined subprograms.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237437 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ada/ChangeLog
gcc/ada/exp_attr.adb
gcc/ada/exp_ch6.adb
gcc/ada/exp_unst.adb
gcc/ada/inline.adb
gcc/ada/sem_attr.adb
gcc/ada/sem_ch12.adb