aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/Make-lang.in
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2019-09-19 08:13:38 +0000
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>2019-09-19 08:13:38 +0000
commitd8ec2787e0ba7b508c968c330b04575d2cbf97d7 (patch)
treec3c07f4f98ae46537abb0ec4383ef8b1d9b17fef /gcc/ada/gcc-interface/Make-lang.in
parent143df1f9aa4e829907d4e300a0006783fcbba71b (diff)
downloadgcc-d8ec2787e0ba7b508c968c330b04575d2cbf97d7.zip
gcc-d8ec2787e0ba7b508c968c330b04575d2cbf97d7.tar.gz
gcc-d8ec2787e0ba7b508c968c330b04575d2cbf97d7.tar.bz2
[Ada] Implement Machine_Rounding attribute in line when possible
GNAT implements Machine_Rounding as an alias for Rounding but, whereas the implementation of the latter is in line when possible, that of the former is always out of line, which is not aligned with the intent of the Ada RM. This changes the compiler to using for Machine_Rounding the same in line implementation as Rounding when possible. Running these commands: gcc -c f.adb -gnatD grep system f.adb.dg On the following sources: function F (Val : Float) return Integer is begin return Integer (Float'Machine_Rounding (Val)); end; Should execute silently. 2019-09-19 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * exp_attr.adb (Is_Inline_Floating_Point_Attribute): Treat Machine_Rounding as an alias for Rounding. * sem_res.adb (Simplify_Type_Conversion): Likewise. From-SVN: r275943
Diffstat (limited to 'gcc/ada/gcc-interface/Make-lang.in')
0 files changed, 0 insertions, 0 deletions