This unit is used to implement the rutime support for fixed-point operations (conversions, multiplication, division and I/O). Its correctness is proved with GNATprove. Proof is performed with GNATprove options --level=4 --prover=all Proof requires use of the special Big_Integers_Ghost unit for spec and proof. Mark also the units analyzed as being in SPARK with aspect SPARK_Mode. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * libgnat/a-nbnbig.ads: Mark the unit as Pure. * libgnat/s-aridou.adb: Add contracts and ghost code for proof. (Scaled_Divide): Reorder operations and use of temporaries in two places to facilitate proof. * libgnat/s-aridou.ads: Add full functional contracts. * libgnat/s-arit64.adb: Mark in SPARK. * libgnat/s-arit64.ads: Add contracts similar to those from s-aridou.ads. * rtsfind.ads: Document the limitation that runtime units loading does not work for private with-clauses.