diff options
author | Steve Baird <baird@adacore.com> | 2024-05-07 17:04:28 -0700 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2024-06-14 09:34:47 +0200 |
commit | 5d429a206c0784435cf963cbfd645cb4e7733795 (patch) | |
tree | 234be0a325f77070e5bf14e8aafe7c057bb0ee7b /libitm/alloc.cc | |
parent | 7232be268a0a275d43225fef141cf99d2f6bbed9 (diff) | |
download | gcc-5d429a206c0784435cf963cbfd645cb4e7733795.zip gcc-5d429a206c0784435cf963cbfd645cb4e7733795.tar.gz gcc-5d429a206c0784435cf963cbfd645cb4e7733795.tar.bz2 |
ada: Bad tree built for Obj.Discrim_Dep_Component'Loop_Entry in assertion
The Etype for an N_Selected_Component node usually should not match the Etype
of the referenced component if the component is subject to a
discriminant-dependent constraint. Instead Build_Actual_Subtype_Of_Component
should be called. Fix a case where this rule was not being followed (because
B_A_S_O_C is not called during preanalysis of a component selection), resulting
in a tree that confused CodePeer because the subtype was wrong.
gcc/ada/
* exp_attr.adb
(Expand_Loop_Entry_Attribute):
Ensure that Etype of the saved expression is set correctly.
Diffstat (limited to 'libitm/alloc.cc')
0 files changed, 0 insertions, 0 deletions