2012-10-02 Robert Dewar <dewar@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 2 Oct 2012 12:59:17 +0000 (12:59 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 2 Oct 2012 12:59:17 +0000 (12:59 +0000)
commit30f24d1181796b004fe44716bc6ff6ba1ee86f87
treebd1180312057b27717b504e3498a14d80f2da58f
parenta19df2fba314b73db203799b305974b18adc6356
2012-10-02  Robert Dewar  <dewar@adacore.com>

* s-bignum.adb (Big_Exp): 0**0 should be 1, not 0.
(Big_Exp): Fix possible error for (-1)**0.
(Big_Exp): Fix error in computing 2**K for small K.
(Big_Mod): Fix wrong sign for negative operands.
(Div_Rem): Fix bad results for operands close to 2**63.
* s-bignum.ads: Add documentation and an assertion to require
LLI size to be 64 bits.
* sem_prag.adb (Analyze_Pragma, case Overflow_Checks): Do not
allow ELIMINATED if LLI'Size is other than 64 bits.
* switch-c.adb (Scan_Switches): Do not allow -gnato3 if LLI'Size
is not 64 bits.
* switch.ads (Bad_Switch): Add missing pragma No_Return.
* gnat_ugn.texi: Added appendix on Overflow Check Handling in GNAT.

2012-10-02  Robert Dewar  <dewar@adacore.com>

* sem_type.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191979 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ada/ChangeLog
gcc/ada/gnat_ugn.texi
gcc/ada/s-bignum.adb
gcc/ada/s-bignum.ads
gcc/ada/sem_prag.adb
gcc/ada/sem_type.adb
gcc/ada/switch-c.adb
gcc/ada/switch.ads