[Ada] Make Max_Sensible_Delay uniform across all Posix targets
authorDoug Rupp <rupp@adacore.com>
Fri, 25 May 2018 09:03:47 +0000 (09:03 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Fri, 25 May 2018 09:03:47 +0000 (09:03 +0000)
commit5865218e3bf9b40d90c210446fa06e04265ffda0
treeed7c0a9b8e15500b04d7858f3e4cf05ca41908e1
parenta036d1de575622d6cc7efb8d1de75ce9c4a27de4
[Ada] Make Max_Sensible_Delay uniform across all Posix targets

For instance: 6 months where Duration is 64bits.  Heretofore LynxOS was unique
in having an approximately 12 days max delay. By experimentation the actual
maximum was determined and all relevant delay and sleep procedures rewritten to
incrementally wait if necessary.

2018-05-25  Doug Rupp  <rupp@adacore.com>

gcc/ada/

* libgnarl/s-osinte__aix.ads, libgnarl/s-osinte__android.ads,
libgnarl/s-osinte__darwin.ads, libgnarl/s-osinte__freebsd.ads,
libgnarl/s-osinte__hpux.ads, libgnarl/s-osinte__kfreebsd-gnu.ads,
libgnarl/s-osinte__linux.ads, libgnarl/s-osinte__lynxos178e.ads,
libgnarl/s-osinte__qnx.ads, libgnarl/s-osinte__rtems.ads
(Relative_Timed_Wait): Remove.
* libgnarl/s-tpopmo.adb (Timed_Sleep, Timed_Delay): Rewrite to allow
for incremental looping. Remove references to Rel_Time and
Relative_Timed_Wait.
* libgnat/s-osprim__posix.adb, libgnat/s-osprim__posix2008.adb
(Timed_Delay): Make separate.
* libgnat/s-optide.adb: New separate procedure.
* libgnat/s-osprim.ads (Max_System_Delay): New constant.
* libgnat/s-osprim__lynxos.ads (Max_Sensible_Delay): Set to 6 months.
(Max_System_Delay): New constant.

From-SVN: r260724
17 files changed:
gcc/ada/ChangeLog
gcc/ada/libgnarl/s-osinte__aix.ads
gcc/ada/libgnarl/s-osinte__android.ads
gcc/ada/libgnarl/s-osinte__darwin.ads
gcc/ada/libgnarl/s-osinte__freebsd.ads
gcc/ada/libgnarl/s-osinte__hpux.ads
gcc/ada/libgnarl/s-osinte__kfreebsd-gnu.ads
gcc/ada/libgnarl/s-osinte__linux.ads
gcc/ada/libgnarl/s-osinte__lynxos178e.ads
gcc/ada/libgnarl/s-osinte__qnx.ads
gcc/ada/libgnarl/s-osinte__rtems.ads
gcc/ada/libgnarl/s-tpopmo.adb
gcc/ada/libgnat/s-optide.adb [new file with mode: 0644]
gcc/ada/libgnat/s-osprim.ads
gcc/ada/libgnat/s-osprim__lynxos.ads
gcc/ada/libgnat/s-osprim__posix.adb
gcc/ada/libgnat/s-osprim__posix2008.adb