[Ada] Factor out code for deciding statically known Constrained attributes
authorClaire Dross <dross@adacore.com>
Wed, 18 Sep 2019 08:32:19 +0000 (08:32 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Wed, 18 Sep 2019 08:32:19 +0000 (08:32 +0000)
commitd2880e695410cf607d77be03908d7107e41a5271
tree57c6cac95e82f6ee492df37a5713a431ef033e55
parent209a0094c4b1a8603b73beb77f28ea6c314d5875
[Ada] Factor out code for deciding statically known Constrained attributes

Create a separate routine in Exp_Util for deciding the value of the
Constrained attribute when it is statically known. This routine is used
in Exp_Attr and will be reused in the backend of GNATprove.

There is no impact on compilation and hence no test.

2019-09-18  Claire Dross  <dross@adacore.com>

gcc/ada/

* exp_attr.adb (Expand_N_Attribute_Reference): Call routine from
Exp_Util to know the value of the Constrained attribute in the
static case.
* exp_spark.adb (Expand_SPARK_N_Attribute_Reference): Make
implicit dereferences inside the Constrained attribute explicit.
* exp_util.ads, exp_util.adb
(Attribute_Constrained_Static_Value): New routine to compute the
value of a statically known reference to the Constrained
attribute.

From-SVN: r275848
gcc/ada/ChangeLog
gcc/ada/exp_attr.adb
gcc/ada/exp_spark.adb
gcc/ada/exp_util.adb
gcc/ada/exp_util.ads