exp_ch4.adb
317 KB
-
re PR ada/30740 (Improper semantics in gnat's compilation of certain expressions… · 685094bf
re PR ada/30740 (Improper semantics in gnat's compilation of certain expressions involving modular arithmetic) 2008-05-20 Robert Dewar <dewar@adacore.com> PR ada/30740 * einfo.ads, einfo.adb (Non_Binary_Modulus): Applies to all types and subtypes, always False for non-modular types. Shared_Var_Assign_Proc (node22) and Shared_Var_Read_Proc (node 15) entry nodes have been replaced by Shared_Var_Procs_Instance (node22) for Shared_Storage package. (Is_RACW_Stub_Type): New entity flag. * exp_ch4.adb (Expand_N_Op_Expon): Avoid incorrect optimization of a*(2**b) in the case where we have a modular type with a non-binary modules. Comments reformattings. * sem_intr.adb: Simplify code not that Non_Binary_Modulus applies to all types. From-SVN: r135619
Robert Dewar committed