[Ada] Allow uses of range utility routines on private types
authorPiotr Trojanek <trojanek@adacore.com>
Thu, 11 Jan 2018 08:56:07 +0000 (08:56 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Thu, 11 Jan 2018 08:56:07 +0000 (08:56 +0000)
commit791f2d03b4c611040b0d20b61441b438eecef8b8
treef4ba25915623884bc147bc5501680703099e5650
parenta85dbeec8d84e07ee549fca50dc118234f16d3f1
[Ada] Allow uses of range utility routines on private types

Frontend only calls Is_Null_Range and Not_Null_Range routines on full views
of types, but backends (for example GNATprove) might call them also on
private types. This patch adapts those routines to transparently retrieve
the full type when called on a private type.

No frontend test, because only external backends are affected.

2018-01-11  Piotr Trojanek  <trojanek@adacore.com>

gcc/ada/

* sem_eval.adb (Is_Null_Range): Retrieve the full view when called on a
private (sub)type; refactor to avoid early return statement.
(Not_Null_Range): Same as above.

From-SVN: r256522
gcc/ada/ChangeLog
gcc/ada/sem_eval.adb