[Ada] AI12-0208 Support for Ada.Numerics.Big_Numbers.Big_Integers and Big_Reals

Programming / Compilers / GCC - pmderodat [138bc75d-0d04-0410-961f-82ee72b054a4] - 16 December 2019 10:33 EST

2019-12-16 Arnaud Charlet

gcc/ada/

- impunit.adb: Add a-nbnbin, a-nbnbre, a-nubinu to Ada 2020 units.
- Makefile.rtl: Enable new file.
- libgnat/a-nbnbin.adb, libgnat/a-nbnbin.ads, libgnat/a-nbnbre.adb, libgnat/a-nbnbre.ads, libgnat/a-nubinu.ads: New files. Provide default standalone implementation of Ada.Numerics.Big_Numbers.Big_* based on System.Generic_Bignum.
- libgnat/a-nbnbin__gmp.adb: Alternate implementation of Ada.Numerics.Big_Numbers.Big_Integers based on GMP. Not enabled for now.
- libgnat/s-bignum.ads, libgnat/s-bignum.adb: Now a simple wrapper on top of s-genbig.ads.
- libgnat/s-genbig.ads, libgnat/s-genbig.adb: New files, making s-bignum generic for reuse in Ada.Numerics.Big_Numbers.

3dcfe1ddfb7 [Ada] AI12-0208 Support for Ada.Numerics.Big_Numbers.Big_Integers and Big_Reals
gcc/ada/ChangeLog | 18 +
gcc/ada/Makefile.rtl | 4 +
gcc/ada/impunit.adb | 9 +-
gcc/ada/libgnat/a-nbnbin.adb | 477 ++++++++++++++++
gcc/ada/libgnat/a-nbnbin.ads | 164 ++++++
gcc/ada/libgnat/a-nbnbin__gmp.adb | 730 ++++++++++++++++++++++++
gcc/ada/libgnat/a-nbnbre.adb | 547 ++++++++++++++++++
gcc/ada/libgnat/a-nbnbre.ads | 146 +++++
gcc/ada/libgnat/a-nubinu.ads | 25 +
gcc/ada/libgnat/s-bignum.adb | 1097 ++---------------------------------
gcc/ada/libgnat/s-bignum.ads | 69 +--
gcc/ada/libgnat/s-genbig.adb | 1133 +++++++++++++++++++++++++++++++++++++
gcc/ada/libgnat/s-genbig.ads | 135 +++++
13 files changed, 3454 insertions(+), 1100 deletions(-)

Upstream: gcc.gnu.org


  • Share