diff options
author | Piotr Trojanek <trojanek@adacore.com> | 2023-01-26 15:56:04 +0100 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2023-05-16 10:30:58 +0200 |
commit | b358f011bde393ee602d756ec19a5d1ceb181a72 (patch) | |
tree | 7afab14019b7f248a46f9514a5007e27389e04b4 | |
parent | 4803e348aa63482085d535127689528e4925cccf (diff) | |
download | gcc-b358f011bde393ee602d756ec19a5d1ceb181a72.tar.gz |
ada: Apply range checks to preanalyzed aggregate expressions
When preanalyzing expressions in GNATprove mode, e.g. Pre/Post
contracts, we apply checks, because these expressions will never
be expanded. This didn't happen for aggregate expressions, most
likely because of an oversight.
gcc/ada/
* sem_util.adb (Aggregate_Constraint_Checks): Don't exit early
when preanalysing in GNATprove mode. Now the condition is
consistent with other similar conditions in other code.
-rw-r--r-- | gcc/ada/sem_util.adb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index ad74de6b6f6..38dc654f7be 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -477,7 +477,7 @@ package body Sem_Util is -- this breaks the name resolution mechanism for generic instances. if not Expander_Active - and (Inside_A_Generic or not Full_Analysis or not GNATprove_Mode) + and not (GNATprove_Mode and not Inside_A_Generic) then return; end if; |