s-osinte__linux.ads (Relative_Timed_Wait): Add variable needed for using monotonic...
authorPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Fri, 20 Oct 2017 17:02:37 +0000 (17:02 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Fri, 20 Oct 2017 17:02:37 +0000 (17:02 +0000)
commitc840bf9bc92e71291a9dc653688bf496aa219b7d
tree1b5bbab4b062b0ce438f2e767c216dbbcdf64181
parent8ce6219665fe0ea4679794694eb25d323b3e5c58
s-osinte__linux.ads (Relative_Timed_Wait): Add variable needed for using monotonic clock.

gcc/ada/

2017-10-20  Doug Rupp  <rupp@adacore.com>

* libgnarl/s-osinte__linux.ads (Relative_Timed_Wait): Add variable
needed for using monotonic clock.
* libgnarl/s-taprop__linux.adb: Revert previous monotonic clock
changes.
* libgnarl/s-taprop__linux.adb, s-taprop__posix.adb: Unify and factor
out monotonic clock related functions body.
(Timed_Sleep, Timed_Delay, Montonic_Clock, RT_Resolution,
Compute_Deadline): Move to...
* libgnarl/s-tpopmo.adb: ... here. New separate package body.

2017-10-20  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_Controlling_Limited_Procedure): Handle properly the
case where the controlling formal is an anonymous access to interface
type.
* exp_ch9.adb (Extract_Dispatching_Call): If controlling actual is an
access type, handle properly the the constructed dereference that
designates the object used in the rewritten synchronized call.
(Parameter_Block_Pack): If the type of the actual is by-copy, its
generated declaration in the parameter block does not need an
initialization even if the type is a null-excluding access type,
because it will be initialized with the value of the actual later on.
(Parameter_Block_Pack): Do not add controlling actual to parameter
block when its type is by-copy.

2017-10-20  Justin Squirek  <squirek@adacore.com>

* sem_ch8.adb (Update_Use_Clause_Chain): Add sanity check to verify
scope stack traversal into the context clause.

gcc/testsuite/

2017-10-20  Ed Schonberg  <schonberg@adacore.com>

* gnat.dg/sync_iface_call.adb, gnat.dg/sync_iface_call_pkg.ads,
gnat.dg/sync_iface_call_pkg2.adb, gnat.dg/sync_iface_call_pkg2.ads:
New testcase.

From-SVN: r253948
13 files changed:
gcc/ada/ChangeLog
gcc/ada/exp_ch9.adb
gcc/ada/libgnarl/s-osinte__linux.ads
gcc/ada/libgnarl/s-taprop__linux.adb
gcc/ada/libgnarl/s-taprop__posix.adb
gcc/ada/libgnarl/s-tpopmo.adb [new file with mode: 0644]
gcc/ada/sem_ch8.adb
gcc/ada/sem_util.adb
gcc/testsuite/ChangeLog
gcc/testsuite/gnat.dg/sync_iface_call.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/sync_iface_call_pkg.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/sync_iface_call_pkg2.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/sync_iface_call_pkg2.ads [new file with mode: 0644]