aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@adacore.com>2020-12-08 12:14:08 -0500
committerPierre-Marie de Rodat <derodat@adacore.com>2021-04-28 05:38:07 -0400
commitae77b299e9717e3a76ac6b7be65145a50aa31ed2 (patch)
tree70af9f0efeb43485749e7e4e7dc462bad48f37fa /gcc
parentd2e59934c4f79791b337470e9ef7c34ef66b1b49 (diff)
downloadgcc-ae77b299e9717e3a76ac6b7be65145a50aa31ed2.zip
gcc-ae77b299e9717e3a76ac6b7be65145a50aa31ed2.tar.gz
gcc-ae77b299e9717e3a76ac6b7be65145a50aa31ed2.tar.bz2
[Ada] Assert failure on complex code with private type and discriminant
gcc/ada/ * einfo.adb (Discriminant_Constraint): Refine assertion.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/einfo.adb4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb
index 8c401ca..471aea3 100644
--- a/gcc/ada/einfo.adb
+++ b/gcc/ada/einfo.adb
@@ -1120,7 +1120,9 @@ package body Einfo is
function Discriminant_Constraint (Id : E) return L is
begin
- pragma Assert (Is_Composite_Type (Id) and then Has_Discriminants (Id));
+ pragma Assert
+ (Is_Composite_Type (Id)
+ and then (Has_Discriminants (Id) or else Is_Constrained (Id)));
return Elist21 (Id);
end Discriminant_Constraint;