2016-06-14 Ed Schonberg <schonberg@adacore.com>
commitfdbdf68c8796ebac7183fcc30d2ff120dfb90c3e
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Jun 2016 12:33:56 +0000 (14 12:33 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 14 Jun 2016 12:33:56 +0000 (14 12:33 +0000)
treefdf7de0ad79f5ebf51755f94bd08abec7d1fa29c
parent27d48d240678c34bc7270c3e3db63dfe1de08969
2016-06-14  Ed Schonberg  <schonberg@adacore.com>

* contracts.adb (Has_Null_Body): Move to sem_util, for general
availability.
* sem_util.ads, sem_util.adb (Has_Null_Body): Predicate to
determine when an internal procedure created for some assertion
checking (e.g. type invariant) is a null procedure. Used to
eliminate redundant calls to such procedures when they apply to
components of composite types.
* exp_ch3.adb (Build_Component_Invariant_Call): Do not add call
if invariant procedure has a null body.

2016-06-14  Thomas Quinot  <quinot@adacore.com>

* g-socket.ads (Check_Selector): Clarify effect on IN OUT socket
set parameters.

2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Process_Action): Pass the action
list to Process_Transient_Object.
(Process_If_Case_Statements): Pass the action list to
Process_Transient_Object.
(Process_Transient_Object): Add new parameter Stmts and update the
comment on usage. When the context is a Boolean evaluation, insert
any finalization calls after the last statement of the construct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237435 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ada/ChangeLog
gcc/ada/contracts.adb
gcc/ada/exp_ch3.adb
gcc/ada/exp_ch4.adb
gcc/ada/g-socket.ads
gcc/ada/sem_util.adb
gcc/ada/sem_util.ads