sem_attr.adb (Analyze_Attribute_Old_Result): Adding assertion.
authorJavier Miranda <miranda@adacore.com>
Tue, 14 Jun 2016 12:37:54 +0000 (12:37 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 14 Jun 2016 12:37:54 +0000 (14:37 +0200)
commit64f5d139b90646f4852d167c859f6678fc74a244
treeeb700e1338bceabade0d1558530388a890e27c95
parent5a527952159edc4505c450047b57256d9c7d89d7
sem_attr.adb (Analyze_Attribute_Old_Result): Adding assertion.

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.

From-SVN: r237437
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